﻿2026-06-04T12:53:14.0691741Z ##[group]Run ./traceable-reqs check --json
2026-06-04T12:53:14.0693728Z [36;1m./traceable-reqs check --json[0m
2026-06-04T12:53:14.0718205Z shell: /usr/bin/bash -e {0}
2026-06-04T12:53:14.0719868Z ##[endgroup]
2026-06-04T12:53:14.0932124Z {
2026-06-04T12:53:14.0933562Z   "schemaVersion": 1,
2026-06-04T12:53:14.0953583Z   "summary": {
2026-06-04T12:53:14.0955036Z     "requirementCount": 129,
2026-06-04T12:53:14.0956682Z     "completeCount": 129,
2026-06-04T12:53:14.0958256Z     "incompleteCount": 0,
2026-06-04T12:53:14.0959818Z     "findingCount": 0
2026-06-04T12:53:14.0961131Z   },
2026-06-04T12:53:14.0962263Z   "requirements": [
2026-06-04T12:53:14.0963504Z     {
2026-06-04T12:53:14.0964693Z       "id": "REQ-API-1",
2026-06-04T12:53:14.0966615Z       "title": "api prefix and adapter_name on every machinery invocation",
2026-06-04T12:53:14.0968816Z       "requiredStages": [
2026-06-04T12:53:14.0970283Z         "impl",
2026-06-04T12:53:14.0971584Z         "unit",
2026-06-04T12:53:14.0972897Z         "int"
2026-06-04T12:53:14.0974311Z       ],
2026-06-04T12:53:14.0975520Z       "stages": {
2026-06-04T12:53:14.0976758Z         "doc": {
2026-06-04T12:53:14.0978083Z           "complete": false,
2026-06-04T12:53:14.0979631Z           "evidence": []
2026-06-04T12:53:14.0981020Z         },
2026-06-04T12:53:14.0982212Z         "impl": {
2026-06-04T12:53:14.0983509Z           "complete": true,
2026-06-04T12:53:14.0984981Z           "evidence": [
2026-06-04T12:53:14.0986347Z             {
2026-06-04T12:53:14.0992063Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:53:14.0993941Z               "line": 15
2026-06-04T12:53:14.0995211Z             }
2026-06-04T12:53:14.0996324Z           ]
2026-06-04T12:53:14.0997402Z         },
2026-06-04T12:53:14.0998481Z         "int": {
2026-06-04T12:53:14.0999726Z           "complete": true,
2026-06-04T12:53:14.1001089Z           "evidence": [
2026-06-04T12:53:14.1002350Z             {
2026-06-04T12:53:14.1003729Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:53:14.1005539Z               "line": 13
2026-06-04T12:53:14.1006811Z             }
2026-06-04T12:53:14.1007927Z           ]
2026-06-04T12:53:14.1009018Z         },
2026-06-04T12:53:14.1011081Z         "unit": {
2026-06-04T12:53:14.1012397Z           "complete": true,
2026-06-04T12:53:14.1013857Z           "evidence": [
2026-06-04T12:53:14.1015213Z             {
2026-06-04T12:53:14.1016618Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:53:14.1018413Z               "line": 336
2026-06-04T12:53:14.1019864Z             },
2026-06-04T12:53:14.1021071Z             {
2026-06-04T12:53:14.1022427Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:53:14.1024286Z               "line": 342
2026-06-04T12:53:14.1025792Z             },
2026-06-04T12:53:14.1027094Z             {
2026-06-04T12:53:14.1028459Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:53:14.1030241Z               "line": 353
2026-06-04T12:53:14.1031533Z             }
2026-06-04T12:53:14.1032665Z           ]
2026-06-04T12:53:14.1033743Z         }
2026-06-04T12:53:14.1034813Z       }
2026-06-04T12:53:14.1035881Z     },
2026-06-04T12:53:14.1036956Z     {
2026-06-04T12:53:14.1038054Z       "id": "REQ-API-2",
2026-06-04T12:53:14.1040259Z       "title": "The api subcommand surface (bind/listen/poll/state/worker/boundary/...)",
2026-06-04T12:53:14.1042739Z       "requiredStages": [
2026-06-04T12:53:14.1044058Z         "impl",
2026-06-04T12:53:14.1045193Z         "unit",
2026-06-04T12:53:14.1071044Z         "int"
2026-06-04T12:53:14.1072321Z       ],
2026-06-04T12:53:14.1073380Z       "stages": {
2026-06-04T12:53:14.1074532Z         "doc": {
2026-06-04T12:53:14.1075729Z           "complete": false,
2026-06-04T12:53:14.1077116Z           "evidence": []
2026-06-04T12:53:14.1078395Z         },
2026-06-04T12:53:14.1079531Z         "impl": {
2026-06-04T12:53:14.1080735Z           "complete": true,
2026-06-04T12:53:14.1082084Z           "evidence": [
2026-06-04T12:53:14.1083317Z             {
2026-06-04T12:53:14.1085374Z               "path": "crates/spt-store/src/history.rs",
2026-06-04T12:53:14.1087120Z               "line": 15
2026-06-04T12:53:14.1088631Z             },
2026-06-04T12:53:14.1089946Z             {
2026-06-04T12:53:14.1091228Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.1092911Z               "line": 20
2026-06-04T12:53:14.1094138Z             },
2026-06-04T12:53:14.1095209Z             {
2026-06-04T12:53:14.1096495Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.1098161Z               "line": 125
2026-06-04T12:53:14.1099720Z             },
2026-06-04T12:53:14.1100807Z             {
2026-06-04T12:53:14.1102123Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.1103820Z               "line": 21
2026-06-04T12:53:14.1105037Z             },
2026-06-04T12:53:14.1106131Z             {
2026-06-04T12:53:14.1107443Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.1109144Z               "line": 38
2026-06-04T12:53:14.1110661Z             },
2026-06-04T12:53:14.1111797Z             {
2026-06-04T12:53:14.1113168Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.1114950Z               "line": 160
2026-06-04T12:53:14.1116224Z             },
2026-06-04T12:53:14.1117346Z             {
2026-06-04T12:53:14.1118695Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.1120630Z               "line": 199
2026-06-04T12:53:14.1121858Z             },
2026-06-04T12:53:14.1122925Z             {
2026-06-04T12:53:14.1124219Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.1126205Z               "line": 223
2026-06-04T12:53:14.1127615Z             },
2026-06-04T12:53:14.1128737Z             {
2026-06-04T12:53:14.1130244Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:53:14.1131904Z               "line": 17
2026-06-04T12:53:14.1133118Z             },
2026-06-04T12:53:14.1134186Z             {
2026-06-04T12:53:14.1135453Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:53:14.1137118Z               "line": 30
2026-06-04T12:53:14.1138343Z             },
2026-06-04T12:53:14.1139600Z             {
2026-06-04T12:53:14.1140911Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:53:14.1142608Z               "line": 63
2026-06-04T12:53:14.1143864Z             },
2026-06-04T12:53:14.1144988Z             {
2026-06-04T12:53:14.1146289Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:53:14.1148017Z               "line": 76
2026-06-04T12:53:14.1149304Z             }
2026-06-04T12:53:14.1150542Z           ]
2026-06-04T12:53:14.1151572Z         },
2026-06-04T12:53:14.1152605Z         "int": {
2026-06-04T12:53:14.1153751Z           "complete": true,
2026-06-04T12:53:14.1155050Z           "evidence": [
2026-06-04T12:53:14.1156230Z             {
2026-06-04T12:53:14.1157526Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:53:14.1159295Z               "line": 14
2026-06-04T12:53:14.1160879Z             },
2026-06-04T12:53:14.1161967Z             {
2026-06-04T12:53:14.1163277Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:53:14.1165005Z               "line": 151
2026-06-04T12:53:14.1166246Z             }
2026-06-04T12:53:14.1167326Z           ]
2026-06-04T12:53:14.1168376Z         },
2026-06-04T12:53:14.1169782Z         "unit": {
2026-06-04T12:53:14.1170945Z           "complete": true,
2026-06-04T12:53:14.1172272Z           "evidence": [
2026-06-04T12:53:14.1173474Z             {
2026-06-04T12:53:14.1174780Z               "path": "crates/spt-store/src/history.rs",
2026-06-04T12:53:14.1176469Z               "line": 42
2026-06-04T12:53:14.1177710Z             },
2026-06-04T12:53:14.1178801Z             {
2026-06-04T12:53:14.1180493Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.1182193Z               "line": 204
2026-06-04T12:53:14.1183434Z             },
2026-06-04T12:53:14.1184524Z             {
2026-06-04T12:53:14.1186208Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.1187923Z               "line": 296
2026-06-04T12:53:14.1189389Z             },
2026-06-04T12:53:14.1191097Z             {
2026-06-04T12:53:14.1192686Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.1194431Z               "line": 307
2026-06-04T12:53:14.1195884Z             },
2026-06-04T12:53:14.1197028Z             {
2026-06-04T12:53:14.1198381Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.1200327Z               "line": 375
2026-06-04T12:53:14.1201571Z             },
2026-06-04T12:53:14.1202653Z             {
2026-06-04T12:53:14.1203963Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.1205705Z               "line": 387
2026-06-04T12:53:14.1206952Z             },
2026-06-04T12:53:14.1208050Z             {
2026-06-04T12:53:14.1209487Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:53:14.1211236Z               "line": 137
2026-06-04T12:53:14.1212537Z             },
2026-06-04T12:53:14.1213667Z             {
2026-06-04T12:53:14.1214973Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:53:14.1216707Z               "line": 172
2026-06-04T12:53:14.1217996Z             }
2026-06-04T12:53:14.1219110Z           ]
2026-06-04T12:53:14.1220307Z         }
2026-06-04T12:53:14.1221500Z       }
2026-06-04T12:53:14.1222535Z     },
2026-06-04T12:53:14.1223606Z     {
2026-06-04T12:53:14.1224674Z       "id": "REQ-API-3",
2026-06-04T12:53:14.1226321Z       "title": "commune/signoff are file-drops, not commands",
2026-06-04T12:53:14.1228192Z       "requiredStages": [
2026-06-04T12:53:14.1229519Z         "impl",
2026-06-04T12:53:14.1230638Z         "unit",
2026-06-04T12:53:14.1231740Z         "int"
2026-06-04T12:53:14.1232833Z       ],
2026-06-04T12:53:14.1233876Z       "stages": {
2026-06-04T12:53:14.1235011Z         "doc": {
2026-06-04T12:53:14.1236177Z           "complete": false,
2026-06-04T12:53:14.1237526Z           "evidence": []
2026-06-04T12:53:14.1238783Z         },
2026-06-04T12:53:14.1239901Z         "impl": {
2026-06-04T12:53:14.1241081Z           "complete": true,
2026-06-04T12:53:14.1242381Z           "evidence": [
2026-06-04T12:53:14.1243599Z             {
2026-06-04T12:53:14.1244876Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:53:14.1246550Z               "line": 27
2026-06-04T12:53:14.1247775Z             },
2026-06-04T12:53:14.1248856Z             {
2026-06-04T12:53:14.1250223Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.1251921Z               "line": 233
2026-06-04T12:53:14.1253155Z             }
2026-06-04T12:53:14.1254233Z           ]
2026-06-04T12:53:14.1255269Z         },
2026-06-04T12:53:14.1256304Z         "int": {
2026-06-04T12:53:14.1257446Z           "complete": true,
2026-06-04T12:53:14.1258735Z           "evidence": [
2026-06-04T12:53:14.1259976Z             {
2026-06-04T12:53:14.1261261Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:53:14.1262943Z               "line": 203
2026-06-04T12:53:14.1264145Z             }
2026-06-04T12:53:14.1265226Z           ]
2026-06-04T12:53:14.1266248Z         },
2026-06-04T12:53:14.1267272Z         "unit": {
2026-06-04T12:53:14.1268421Z           "complete": true,
2026-06-04T12:53:14.1269789Z           "evidence": [
2026-06-04T12:53:14.1270975Z             {
2026-06-04T12:53:14.1272219Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:53:14.1273856Z               "line": 230
2026-06-04T12:53:14.1275067Z             },
2026-06-04T12:53:14.1276144Z             {
2026-06-04T12:53:14.1277410Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.1279068Z               "line": 416
2026-06-04T12:53:14.1280313Z             }
2026-06-04T12:53:14.1281355Z           ]
2026-06-04T12:53:14.1282372Z         }
2026-06-04T12:53:14.1283376Z       }
2026-06-04T12:53:14.1284357Z     },
2026-06-04T12:53:14.1285413Z     {
2026-06-04T12:53:14.1286505Z       "id": "REQ-ARCH-1",
2026-06-04T12:53:14.1288274Z       "title": "Many small acyclically-layered crates",
2026-06-04T12:53:14.1290246Z       "requiredStages": [
2026-06-04T12:53:14.1291493Z         "impl"
2026-06-04T12:53:14.1292561Z       ],
2026-06-04T12:53:14.1293581Z       "stages": {
2026-06-04T12:53:14.1294677Z         "doc": {
2026-06-04T12:53:14.1295819Z           "complete": false,
2026-06-04T12:53:14.1297131Z           "evidence": []
2026-06-04T12:53:14.1298321Z         },
2026-06-04T12:53:14.1299408Z         "impl": {
2026-06-04T12:53:14.1300554Z           "complete": true,
2026-06-04T12:53:14.1301841Z           "evidence": [
2026-06-04T12:53:14.1303010Z             {
2026-06-04T12:53:14.1304212Z               "path": "crates/spt-msg/src/lib.rs",
2026-06-04T12:53:14.1305800Z               "line": 16
2026-06-04T12:53:14.1307009Z             },
2026-06-04T12:53:14.1308074Z             {
2026-06-04T12:53:14.1309316Z               "path": "crates/spt-proto/src/lib.rs",
2026-06-04T12:53:14.1310925Z               "line": 12
2026-06-04T12:53:14.1312144Z             },
2026-06-04T12:53:14.1313193Z             {
2026-06-04T12:53:14.1314414Z               "path": "crates/spt-store/src/lib.rs",
2026-06-04T12:53:14.1316011Z               "line": 12
2026-06-04T12:53:14.1317215Z             }
2026-06-04T12:53:14.1318259Z           ]
2026-06-04T12:53:14.1319313Z         },
2026-06-04T12:53:14.1320333Z         "int": {
2026-06-04T12:53:14.1321461Z           "complete": false,
2026-06-04T12:53:14.1322770Z           "evidence": []
2026-06-04T12:53:14.1323981Z         },
2026-06-04T12:53:14.1324998Z         "unit": {
2026-06-04T12:53:14.1326172Z           "complete": false,
2026-06-04T12:53:14.1327494Z           "evidence": []
2026-06-04T12:53:14.1328692Z         }
2026-06-04T12:53:14.1329729Z       }
2026-06-04T12:53:14.1330724Z     },
2026-06-04T12:53:14.1331715Z     {
2026-06-04T12:53:14.1332735Z       "id": "REQ-ARCH-2",
2026-06-04T12:53:14.1334458Z       "title": "Public SDK surface is spt-proto, spt-runtime, spt-msg",
2026-06-04T12:53:14.1336471Z       "requiredStages": [
2026-06-04T12:53:14.1337715Z         "impl"
2026-06-04T12:53:14.1338786Z       ],
2026-06-04T12:53:14.1339831Z       "stages": {
2026-06-04T12:53:14.1340922Z         "doc": {
2026-06-04T12:53:14.1342042Z           "complete": false,
2026-06-04T12:53:14.1343337Z           "evidence": []
2026-06-04T12:53:14.1344537Z         },
2026-06-04T12:53:14.1345563Z         "impl": {
2026-06-04T12:53:14.1346688Z           "complete": true,
2026-06-04T12:53:14.1347949Z           "evidence": [
2026-06-04T12:53:14.1349132Z             {
2026-06-04T12:53:14.1350411Z               "path": "crates/spt-runtime/src/lib.rs",
2026-06-04T12:53:14.1352039Z               "line": 18
2026-06-04T12:53:14.1353241Z             }
2026-06-04T12:53:14.1354286Z           ]
2026-06-04T12:53:14.1355309Z         },
2026-06-04T12:53:14.1356314Z         "int": {
2026-06-04T12:53:14.1357431Z           "complete": false,
2026-06-04T12:53:14.1358732Z           "evidence": []
2026-06-04T12:53:14.1359970Z         },
2026-06-04T12:53:14.1360977Z         "unit": {
2026-06-04T12:53:14.1362104Z           "complete": false,
2026-06-04T12:53:14.1363404Z           "evidence": []
2026-06-04T12:53:14.1364588Z         }
2026-06-04T12:53:14.1365578Z       }
2026-06-04T12:53:14.1366551Z     },
2026-06-04T12:53:14.1367542Z     {
2026-06-04T12:53:14.1368569Z       "id": "REQ-ARCH-3",
2026-06-04T12:53:14.1370610Z       "title": "Wire-protocol version independent of crate semver, N-1 compat window",
2026-06-04T12:53:14.1372897Z       "requiredStages": [
2026-06-04T12:53:14.1374138Z         "impl",
2026-06-04T12:53:14.1375228Z         "unit"
2026-06-04T12:53:14.1376277Z       ],
2026-06-04T12:53:14.1377285Z       "stages": {
2026-06-04T12:53:14.1378375Z         "doc": {
2026-06-04T12:53:14.1379561Z           "complete": false,
2026-06-04T12:53:14.1380874Z           "evidence": []
2026-06-04T12:53:14.1382069Z         },
2026-06-04T12:53:14.1383082Z         "impl": {
2026-06-04T12:53:14.1384227Z           "complete": true,
2026-06-04T12:53:14.1385723Z           "evidence": [
2026-06-04T12:53:14.1419092Z             {
2026-06-04T12:53:14.1421520Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T12:53:14.1423188Z               "line": 34
2026-06-04T12:53:14.1424369Z             },
2026-06-04T12:53:14.1425435Z             {
2026-06-04T12:53:14.1426707Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T12:53:14.1428332Z               "line": 41
2026-06-04T12:53:14.1429841Z             }
2026-06-04T12:53:14.1430880Z           ]
2026-06-04T12:53:14.1431885Z         },
2026-06-04T12:53:14.1432887Z         "int": {
2026-06-04T12:53:14.1434014Z           "complete": false,
2026-06-04T12:53:14.1435326Z           "evidence": []
2026-06-04T12:53:14.1436516Z         },
2026-06-04T12:53:14.1437515Z         "unit": {
2026-06-04T12:53:14.1438632Z           "complete": true,
2026-06-04T12:53:14.1440227Z           "evidence": [
2026-06-04T12:53:14.1441383Z             {
2026-06-04T12:53:14.1442642Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T12:53:14.1444295Z               "line": 51
2026-06-04T12:53:14.1445468Z             },
2026-06-04T12:53:14.1446521Z             {
2026-06-04T12:53:14.1447772Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T12:53:14.1449687Z               "line": 65
2026-06-04T12:53:14.1451050Z             },
2026-06-04T12:53:14.1452100Z             {
2026-06-04T12:53:14.1453366Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T12:53:14.1455011Z               "line": 74
2026-06-04T12:53:14.1456183Z             }
2026-06-04T12:53:14.1457221Z           ]
2026-06-04T12:53:14.1458218Z         }
2026-06-04T12:53:14.1459239Z       }
2026-06-04T12:53:14.1460564Z     },
2026-06-04T12:53:14.1461551Z     {
2026-06-04T12:53:14.1462572Z       "id": "REQ-ARCH-4",
2026-06-04T12:53:14.1464354Z       "title": "Copy-verbatim the commodity layer from the sister project",
2026-06-04T12:53:14.1466386Z       "requiredStages": [
2026-06-04T12:53:14.1467635Z         "impl",
2026-06-04T12:53:14.1468702Z         "unit"
2026-06-04T12:53:14.1470104Z       ],
2026-06-04T12:53:14.1471103Z       "stages": {
2026-06-04T12:53:14.1472194Z         "doc": {
2026-06-04T12:53:14.1473317Z           "complete": false,
2026-06-04T12:53:14.1474707Z           "evidence": []
2026-06-04T12:53:14.1475884Z         },
2026-06-04T12:53:14.1476880Z         "impl": {
2026-06-04T12:53:14.1477998Z           "complete": true,
2026-06-04T12:53:14.1479455Z           "evidence": [
2026-06-04T12:53:14.1480758Z             {
2026-06-04T12:53:14.1481990Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1483594Z               "line": 63
2026-06-04T12:53:14.1484769Z             },
2026-06-04T12:53:14.1485813Z             {
2026-06-04T12:53:14.1487040Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1488627Z               "line": 77
2026-06-04T12:53:14.1490472Z             },
2026-06-04T12:53:14.1491541Z             {
2026-06-04T12:53:14.1492796Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1494390Z               "line": 97
2026-06-04T12:53:14.1495587Z             },
2026-06-04T12:53:14.1496641Z             {
2026-06-04T12:53:14.1497871Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1499662Z               "line": 112
2026-06-04T12:53:14.1500999Z             },
2026-06-04T12:53:14.1502052Z             {
2026-06-04T12:53:14.1503282Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1504887Z               "line": 162
2026-06-04T12:53:14.1506079Z             }
2026-06-04T12:53:14.1507121Z           ]
2026-06-04T12:53:14.1508127Z         },
2026-06-04T12:53:14.1509121Z         "int": {
2026-06-04T12:53:14.1510288Z           "complete": false,
2026-06-04T12:53:14.1511600Z           "evidence": []
2026-06-04T12:53:14.1512788Z         },
2026-06-04T12:53:14.1513795Z         "unit": {
2026-06-04T12:53:14.1514922Z           "complete": true,
2026-06-04T12:53:14.1516476Z           "evidence": [
2026-06-04T12:53:14.1517636Z             {
2026-06-04T12:53:14.1518877Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1520774Z               "line": 226
2026-06-04T12:53:14.1521980Z             },
2026-06-04T12:53:14.1523045Z             {
2026-06-04T12:53:14.1531423Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1533122Z               "line": 236
2026-06-04T12:53:14.1534323Z             },
2026-06-04T12:53:14.1535377Z             {
2026-06-04T12:53:14.1536618Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1538220Z               "line": 247
2026-06-04T12:53:14.1539469Z             },
2026-06-04T12:53:14.1540529Z             {
2026-06-04T12:53:14.1541760Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1543351Z               "line": 258
2026-06-04T12:53:14.1544535Z             },
2026-06-04T12:53:14.1545577Z             {
2026-06-04T12:53:14.1546800Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1548433Z               "line": 270
2026-06-04T12:53:14.1549931Z             },
2026-06-04T12:53:14.1551001Z             {
2026-06-04T12:53:14.1552223Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1553827Z               "line": 283
2026-06-04T12:53:14.1555013Z             },
2026-06-04T12:53:14.1556061Z             {
2026-06-04T12:53:14.1557285Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1558878Z               "line": 294
2026-06-04T12:53:14.1560092Z             },
2026-06-04T12:53:14.1561136Z             {
2026-06-04T12:53:14.1562382Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1563987Z               "line": 308
2026-06-04T12:53:14.1565174Z             },
2026-06-04T12:53:14.1566221Z             {
2026-06-04T12:53:14.1567440Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.1569038Z               "line": 336
2026-06-04T12:53:14.1570259Z             }
2026-06-04T12:53:14.1571302Z           ]
2026-06-04T12:53:14.1572315Z         }
2026-06-04T12:53:14.1573308Z       }
2026-06-04T12:53:14.1574292Z     },
2026-06-04T12:53:14.1575271Z     {
2026-06-04T12:53:14.1576301Z       "id": "REQ-DAEMON-1",
2026-06-04T12:53:14.1578039Z       "title": "One per-machine spt-daemon owning all per-machine state",
2026-06-04T12:53:14.1580069Z       "requiredStages": [
2026-06-04T12:53:14.1581294Z         "impl",
2026-06-04T12:53:14.1582357Z         "unit",
2026-06-04T12:53:14.1583466Z         "int"
2026-06-04T12:53:14.1584503Z       ],
2026-06-04T12:53:14.1585495Z       "stages": {
2026-06-04T12:53:14.1586579Z         "doc": {
2026-06-04T12:53:14.1588456Z           "complete": false,
2026-06-04T12:53:14.1590182Z           "evidence": []
2026-06-04T12:53:14.1591679Z         },
2026-06-04T12:53:14.1592985Z         "impl": {
2026-06-04T12:53:14.1594281Z           "complete": true,
2026-06-04T12:53:14.1595677Z           "evidence": [
2026-06-04T12:53:14.1596936Z             {
2026-06-04T12:53:14.1598418Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:53:14.1600432Z               "line": 12
2026-06-04T12:53:14.1601642Z             },
2026-06-04T12:53:14.1602685Z             {
2026-06-04T12:53:14.1603981Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.1605627Z               "line": 16
2026-06-04T12:53:14.1606812Z             },
2026-06-04T12:53:14.1608037Z             {
2026-06-04T12:53:14.1609352Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T12:53:14.1611119Z               "line": 15
2026-06-04T12:53:14.1612292Z             },
2026-06-04T12:53:14.1613337Z             {
2026-06-04T12:53:14.1614517Z               "path": "crates/spt/src/api/live.rs",
2026-06-04T12:53:14.1616071Z               "line": 13
2026-06-04T12:53:14.1617244Z             }
2026-06-04T12:53:14.1618267Z           ]
2026-06-04T12:53:14.1619301Z         },
2026-06-04T12:53:14.1620646Z         "int": {
2026-06-04T12:53:14.1621760Z           "complete": true,
2026-06-04T12:53:14.1623503Z           "evidence": [
2026-06-04T12:53:14.1624651Z             {
2026-06-04T12:53:14.1626136Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T12:53:14.1627819Z               "line": 32
2026-06-04T12:53:14.1629012Z             }
2026-06-04T12:53:14.1630093Z           ]
2026-06-04T12:53:14.1631101Z         },
2026-06-04T12:53:14.1632103Z         "unit": {
2026-06-04T12:53:14.1633210Z           "complete": true,
2026-06-04T12:53:14.1634452Z           "evidence": [
2026-06-04T12:53:14.1640949Z             {
2026-06-04T12:53:14.1642295Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:53:14.1643921Z               "line": 242
2026-06-04T12:53:14.1645098Z             },
2026-06-04T12:53:14.1646181Z             {
2026-06-04T12:53:14.1647438Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:53:14.1649050Z               "line": 250
2026-06-04T12:53:14.1650305Z             },
2026-06-04T12:53:14.1651391Z             {
2026-06-04T12:53:14.1652636Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:53:14.1654255Z               "line": 263
2026-06-04T12:53:14.1655455Z             },
2026-06-04T12:53:14.1656494Z             {
2026-06-04T12:53:14.1657745Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:53:14.1659370Z               "line": 271
2026-06-04T12:53:14.1660555Z             },
2026-06-04T12:53:14.1661591Z             {
2026-06-04T12:53:14.1662868Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.1664508Z               "line": 528
2026-06-04T12:53:14.1665714Z             },
2026-06-04T12:53:14.1666750Z             {
2026-06-04T12:53:14.1668017Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.1669706Z               "line": 587
2026-06-04T12:53:14.1670889Z             },
2026-06-04T12:53:14.1671937Z             {
2026-06-04T12:53:14.1673156Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T12:53:14.1674749Z               "line": 100
2026-06-04T12:53:14.1676034Z             },
2026-06-04T12:53:14.1677095Z             {
2026-06-04T12:53:14.1678313Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T12:53:14.1679959Z               "line": 125
2026-06-04T12:53:14.1681146Z             }
2026-06-04T12:53:14.1682173Z           ]
2026-06-04T12:53:14.1683161Z         }
2026-06-04T12:53:14.1684173Z       }
2026-06-04T12:53:14.1685145Z     },
2026-06-04T12:53:14.1686130Z     {
2026-06-04T12:53:14.1687143Z       "id": "REQ-DAEMON-2",
2026-06-04T12:53:14.1688698Z       "title": "Broker/brain split for seamless self-update",
2026-06-04T12:53:14.1690506Z       "requiredStages": [
2026-06-04T12:53:14.1691710Z         "impl",
2026-06-04T12:53:14.1692769Z         "unit",
2026-06-04T12:53:14.1693930Z         "int"
2026-06-04T12:53:14.1694958Z       ],
2026-06-04T12:53:14.1695955Z       "stages": {
2026-06-04T12:53:14.1697049Z         "doc": {
2026-06-04T12:53:14.1698160Z           "complete": false,
2026-06-04T12:53:14.1699489Z           "evidence": []
2026-06-04T12:53:14.1700666Z         },
2026-06-04T12:53:14.1701702Z         "impl": {
2026-06-04T12:53:14.1702817Z           "complete": true,
2026-06-04T12:53:14.1704077Z           "evidence": [
2026-06-04T12:53:14.1705232Z             {
2026-06-04T12:53:14.1706464Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:53:14.1708064Z               "line": 23
2026-06-04T12:53:14.1709273Z             },
2026-06-04T12:53:14.1710322Z             {
2026-06-04T12:53:14.1711544Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:53:14.1713134Z               "line": 489
2026-06-04T12:53:14.1714311Z             },
2026-06-04T12:53:14.1715348Z             {
2026-06-04T12:53:14.1716561Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:53:14.1718153Z               "line": 612
2026-06-04T12:53:14.1719359Z             },
2026-06-04T12:53:14.1720401Z             {
2026-06-04T12:53:14.1721644Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:53:14.1723680Z               "line": 32
2026-06-04T12:53:14.1725119Z             },
2026-06-04T12:53:14.1726147Z             {
2026-06-04T12:53:14.1727380Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:53:14.1728994Z               "line": 191
2026-06-04T12:53:14.1730218Z             },
2026-06-04T12:53:14.1731255Z             {
2026-06-04T12:53:14.1732488Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:53:14.1734077Z               "line": 510
2026-06-04T12:53:14.1735242Z             },
2026-06-04T12:53:14.1736270Z             {
2026-06-04T12:53:14.1737504Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:53:14.1739094Z               "line": 679
2026-06-04T12:53:14.1740292Z             },
2026-06-04T12:53:14.1741320Z             {
2026-06-04T12:53:14.1742526Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T12:53:14.1748327Z               "line": 11
2026-06-04T12:53:14.1749670Z             },
2026-06-04T12:53:14.1750703Z             {
2026-06-04T12:53:14.1751942Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T12:53:14.1753547Z               "line": 53
2026-06-04T12:53:14.1754711Z             },
2026-06-04T12:53:14.1755794Z             {
2026-06-04T12:53:14.1756981Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:53:14.1758528Z               "line": 13
2026-06-04T12:53:14.1759719Z             },
2026-06-04T12:53:14.1760759Z             {
2026-06-04T12:53:14.1761998Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.1763592Z               "line": 27
2026-06-04T12:53:14.1764772Z             },
2026-06-04T12:53:14.1765798Z             {
2026-06-04T12:53:14.1767035Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.1768626Z               "line": 94
2026-06-04T12:53:14.1769813Z             },
2026-06-04T12:53:14.1770834Z             {
2026-06-04T12:53:14.1772066Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.1773674Z               "line": 393
2026-06-04T12:53:14.1774861Z             },
2026-06-04T12:53:14.1775877Z             {
2026-06-04T12:53:14.1777106Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.1778696Z               "line": 460
2026-06-04T12:53:14.1779895Z             },
2026-06-04T12:53:14.1780910Z             {
2026-06-04T12:53:14.1782145Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.1783741Z               "line": 494
2026-06-04T12:53:14.1784897Z             },
2026-06-04T12:53:14.1785926Z             {
2026-06-04T12:53:14.1787185Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.1788792Z               "line": 536
2026-06-04T12:53:14.1790004Z             },
2026-06-04T12:53:14.1791033Z             {
2026-06-04T12:53:14.1792267Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.1793853Z               "line": 581
2026-06-04T12:53:14.1795028Z             },
2026-06-04T12:53:14.1796058Z             {
2026-06-04T12:53:14.1797311Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T12:53:14.1798934Z               "line": 10
2026-06-04T12:53:14.1800115Z             }
2026-06-04T12:53:14.1801123Z           ]
2026-06-04T12:53:14.1802099Z         },
2026-06-04T12:53:14.1803085Z         "int": {
2026-06-04T12:53:14.1804176Z           "complete": true,
2026-06-04T12:53:14.1805403Z           "evidence": [
2026-06-04T12:53:14.1806542Z             {
2026-06-04T12:53:14.1807785Z               "path": "crates/spt-daemon/tests/broker.rs",
2026-06-04T12:53:14.1809417Z               "line": 17
2026-06-04T12:53:14.1810568Z             },
2026-06-04T12:53:14.1811585Z             {
2026-06-04T12:53:14.1812866Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T12:53:14.1814507Z               "line": 33
2026-06-04T12:53:14.1815654Z             },
2026-06-04T12:53:14.1816675Z             {
2026-06-04T12:53:14.1818221Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-04T12:53:14.1819851Z               "line": 19
2026-06-04T12:53:14.1821160Z             },
2026-06-04T12:53:14.1822176Z             {
2026-06-04T12:53:14.1823458Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T12:53:14.1825088Z               "line": 70
2026-06-04T12:53:14.1826232Z             },
2026-06-04T12:53:14.1827254Z             {
2026-06-04T12:53:14.1828548Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T12:53:14.1830235Z               "line": 90
2026-06-04T12:53:14.1831396Z             },
2026-06-04T12:53:14.1832416Z             {
2026-06-04T12:53:14.1833689Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T12:53:14.1835320Z               "line": 160
2026-06-04T12:53:14.1836468Z             },
2026-06-04T12:53:14.1837492Z             {
2026-06-04T12:53:14.1838778Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T12:53:14.1840916Z               "line": 196
2026-06-04T12:53:14.1842104Z             },
2026-06-04T12:53:14.1843117Z             {
2026-06-04T12:53:14.1844420Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-04T12:53:14.1846060Z               "line": 121
2026-06-04T12:53:14.1847220Z             }
2026-06-04T12:53:14.1848228Z           ]
2026-06-04T12:53:14.1849258Z         },
2026-06-04T12:53:14.1854279Z         "unit": {
2026-06-04T12:53:14.1855519Z           "complete": true,
2026-06-04T12:53:14.1856762Z           "evidence": [
2026-06-04T12:53:14.1857884Z             {
2026-06-04T12:53:14.1859086Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T12:53:14.1860739Z               "line": 62
2026-06-04T12:53:14.1861881Z             },
2026-06-04T12:53:14.1862910Z             {
2026-06-04T12:53:14.1864110Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T12:53:14.1865656Z               "line": 76
2026-06-04T12:53:14.1866798Z             },
2026-06-04T12:53:14.1867845Z             {
2026-06-04T12:53:14.1869047Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T12:53:14.1870650Z               "line": 88
2026-06-04T12:53:14.1871806Z             },
2026-06-04T12:53:14.1872821Z             {
2026-06-04T12:53:14.1874050Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:53:14.1875625Z               "line": 264
2026-06-04T12:53:14.1876780Z             },
2026-06-04T12:53:14.1877795Z             {
2026-06-04T12:53:14.1878981Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:53:14.1880559Z               "line": 506
2026-06-04T12:53:14.1881726Z             },
2026-06-04T12:53:14.1882743Z             {
2026-06-04T12:53:14.1883938Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:53:14.1885479Z               "line": 514
2026-06-04T12:53:14.1886635Z             },
2026-06-04T12:53:14.1887649Z             {
2026-06-04T12:53:14.1888839Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:53:14.1890419Z               "line": 531
2026-06-04T12:53:14.1891577Z             },
2026-06-04T12:53:14.1892597Z             {
2026-06-04T12:53:14.1893789Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:53:14.1895327Z               "line": 576
2026-06-04T12:53:14.1896474Z             },
2026-06-04T12:53:14.1897488Z             {
2026-06-04T12:53:14.1898715Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.1900343Z               "line": 648
2026-06-04T12:53:14.1901494Z             },
2026-06-04T12:53:14.1902500Z             {
2026-06-04T12:53:14.1903718Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.1905312Z               "line": 660
2026-06-04T12:53:14.1906477Z             },
2026-06-04T12:53:14.1907490Z             {
2026-06-04T12:53:14.1908734Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T12:53:14.1910379Z               "line": 112
2026-06-04T12:53:14.1911530Z             }
2026-06-04T12:53:14.1912833Z           ]
2026-06-04T12:53:14.1913802Z         }
2026-06-04T12:53:14.1914772Z       }
2026-06-04T12:53:14.1915725Z     },
2026-06-04T12:53:14.1916833Z     {
2026-06-04T12:53:14.1917837Z       "id": "REQ-DAEMON-3",
2026-06-04T12:53:14.1919506Z       "title": "Any api invocation auto-starts the daemon if absent",
2026-06-04T12:53:14.1921387Z       "requiredStages": [
2026-06-04T12:53:14.1922578Z         "impl",
2026-06-04T12:53:14.1923608Z         "unit",
2026-06-04T12:53:14.1924627Z         "int"
2026-06-04T12:53:14.1925624Z       ],
2026-06-04T12:53:14.1926589Z       "stages": {
2026-06-04T12:53:14.1927646Z         "doc": {
2026-06-04T12:53:14.1928742Z           "complete": false,
2026-06-04T12:53:14.1930043Z           "evidence": []
2026-06-04T12:53:14.1931183Z         },
2026-06-04T12:53:14.1932166Z         "impl": {
2026-06-04T12:53:14.1933253Z           "complete": true,
2026-06-04T12:53:14.1934468Z           "evidence": [
2026-06-04T12:53:14.1935598Z             {
2026-06-04T12:53:14.1936818Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T12:53:14.1938405Z               "line": 14
2026-06-04T12:53:14.1939596Z             },
2026-06-04T12:53:14.1940607Z             {
2026-06-04T12:53:14.1941836Z               "path": "crates/spt-daemon/src/endpoint.rs",
2026-06-04T12:53:14.1943427Z               "line": 11
2026-06-04T12:53:14.1944562Z             },
2026-06-04T12:53:14.1945588Z             {
2026-06-04T12:53:14.1946735Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:53:14.1948250Z               "line": 209
2026-06-04T12:53:14.1949438Z             },
2026-06-04T12:53:14.1950453Z             {
2026-06-04T12:53:14.1951573Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.1953052Z               "line": 362
2026-06-04T12:53:14.1958260Z             }
2026-06-04T12:53:14.1959597Z           ]
2026-06-04T12:53:14.1960603Z         },
2026-06-04T12:53:14.1961577Z         "int": {
2026-06-04T12:53:14.1962658Z           "complete": true,
2026-06-04T12:53:14.1963910Z           "evidence": [
2026-06-04T12:53:14.1965025Z             {
2026-06-04T12:53:14.1966238Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:53:14.1967800Z               "line": 43
2026-06-04T12:53:14.1968936Z             },
2026-06-04T12:53:14.1970016Z             {
2026-06-04T12:53:14.1971242Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:53:14.1972812Z               "line": 320
2026-06-04T12:53:14.1973952Z             }
2026-06-04T12:53:14.1974952Z           ]
2026-06-04T12:53:14.1975908Z         },
2026-06-04T12:53:14.1976872Z         "unit": {
2026-06-04T12:53:14.1977950Z           "complete": true,
2026-06-04T12:53:14.1979214Z           "evidence": [
2026-06-04T12:53:14.1980329Z             {
2026-06-04T12:53:14.1981539Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T12:53:14.1983099Z               "line": 242
2026-06-04T12:53:14.1984246Z             }
2026-06-04T12:53:14.1985231Z           ]
2026-06-04T12:53:14.1986193Z         }
2026-06-04T12:53:14.1987154Z       }
2026-06-04T12:53:14.1988095Z     },
2026-06-04T12:53:14.1989044Z     {
2026-06-04T12:53:14.1990083Z       "id": "REQ-DAEMON-4",
2026-06-04T12:53:14.1991486Z       "title": "Honor every KNOWN-HAZARDS invariant",
2026-06-04T12:53:14.1993085Z       "requiredStages": [
2026-06-04T12:53:14.1994257Z         "impl",
2026-06-04T12:53:14.1995293Z         "unit",
2026-06-04T12:53:14.1996314Z         "int"
2026-06-04T12:53:14.1997319Z       ],
2026-06-04T12:53:14.1998277Z       "stages": {
2026-06-04T12:53:14.1999370Z         "doc": {
2026-06-04T12:53:14.2000455Z           "complete": false,
2026-06-04T12:53:14.2001708Z           "evidence": []
2026-06-04T12:53:14.2002857Z         },
2026-06-04T12:53:14.2003820Z         "impl": {
2026-06-04T12:53:14.2004896Z           "complete": true,
2026-06-04T12:53:14.2006094Z           "evidence": [
2026-06-04T12:53:14.2007194Z             {
2026-06-04T12:53:14.2008433Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2010464Z               "line": 339
2026-06-04T12:53:14.2011611Z             },
2026-06-04T12:53:14.2012617Z             {
2026-06-04T12:53:14.2014018Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2015618Z               "line": 401
2026-06-04T12:53:14.2016760Z             },
2026-06-04T12:53:14.2017753Z             {
2026-06-04T12:53:14.2018980Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2020641Z               "line": 423
2026-06-04T12:53:14.2021793Z             }
2026-06-04T12:53:14.2022777Z           ]
2026-06-04T12:53:14.2023737Z         },
2026-06-04T12:53:14.2024703Z         "int": {
2026-06-04T12:53:14.2025769Z           "complete": true,
2026-06-04T12:53:14.2026973Z           "evidence": [
2026-06-04T12:53:14.2028084Z             {
2026-06-04T12:53:14.2029392Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T12:53:14.2031041Z               "line": 34
2026-06-04T12:53:14.2032168Z             }
2026-06-04T12:53:14.2033163Z           ]
2026-06-04T12:53:14.2034132Z         },
2026-06-04T12:53:14.2035100Z         "unit": {
2026-06-04T12:53:14.2036185Z           "complete": true,
2026-06-04T12:53:14.2037379Z           "evidence": [
2026-06-04T12:53:14.2038483Z             {
2026-06-04T12:53:14.2039728Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:53:14.2041287Z               "line": 340
2026-06-04T12:53:14.2042424Z             },
2026-06-04T12:53:14.2043428Z             {
2026-06-04T12:53:14.2044649Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2046239Z               "line": 717
2026-06-04T12:53:14.2047382Z             },
2026-06-04T12:53:14.2048384Z             {
2026-06-04T12:53:14.2049649Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2051516Z               "line": 768
2026-06-04T12:53:14.2052902Z             },
2026-06-04T12:53:14.2053916Z             {
2026-06-04T12:53:14.2059038Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2060842Z               "line": 792
2026-06-04T12:53:14.2062011Z             },
2026-06-04T12:53:14.2063030Z             {
2026-06-04T12:53:14.2064294Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2065909Z               "line": 822
2026-06-04T12:53:14.2067057Z             }
2026-06-04T12:53:14.2068063Z           ]
2026-06-04T12:53:14.2069019Z         }
2026-06-04T12:53:14.2070026Z       }
2026-06-04T12:53:14.2070956Z     },
2026-06-04T12:53:14.2071902Z     {
2026-06-04T12:53:14.2072932Z       "id": "REQ-DOCS-1",
2026-06-04T12:53:14.2074862Z       "title": "Dual-audience docs (human + AI dev-agent), markdown once / two depths",
2026-06-04T12:53:14.2077075Z       "requiredStages": [],
2026-06-04T12:53:14.2078281Z       "stages": {
2026-06-04T12:53:14.2079356Z         "doc": {
2026-06-04T12:53:14.2080436Z           "complete": false,
2026-06-04T12:53:14.2081682Z           "evidence": []
2026-06-04T12:53:14.2082822Z         },
2026-06-04T12:53:14.2083808Z         "impl": {
2026-06-04T12:53:14.2084890Z           "complete": false,
2026-06-04T12:53:14.2086155Z           "evidence": []
2026-06-04T12:53:14.2087302Z         },
2026-06-04T12:53:14.2088264Z         "int": {
2026-06-04T12:53:14.2089379Z           "complete": false,
2026-06-04T12:53:14.2090618Z           "evidence": []
2026-06-04T12:53:14.2091756Z         },
2026-06-04T12:53:14.2092734Z         "unit": {
2026-06-04T12:53:14.2093813Z           "complete": false,
2026-06-04T12:53:14.2095086Z           "evidence": []
2026-06-04T12:53:14.2096229Z         }
2026-06-04T12:53:14.2097181Z       }
2026-06-04T12:53:14.2098118Z     },
2026-06-04T12:53:14.2099067Z     {
2026-06-04T12:53:14.2100078Z       "id": "REQ-DOCS-2",
2026-06-04T12:53:14.2101703Z       "title": "Sub-10-minute runnable killer quickstart per audience",
2026-06-04T12:53:14.2103592Z       "requiredStages": [],
2026-06-04T12:53:14.2104807Z       "stages": {
2026-06-04T12:53:14.2105866Z         "doc": {
2026-06-04T12:53:14.2107275Z           "complete": false,
2026-06-04T12:53:14.2108514Z           "evidence": []
2026-06-04T12:53:14.2109794Z         },
2026-06-04T12:53:14.2110937Z         "impl": {
2026-06-04T12:53:14.2112042Z           "complete": false,
2026-06-04T12:53:14.2113296Z           "evidence": []
2026-06-04T12:53:14.2114429Z         },
2026-06-04T12:53:14.2115402Z         "int": {
2026-06-04T12:53:14.2116502Z           "complete": false,
2026-06-04T12:53:14.2117741Z           "evidence": []
2026-06-04T12:53:14.2118874Z         },
2026-06-04T12:53:14.2119887Z         "unit": {
2026-06-04T12:53:14.2120987Z           "complete": false,
2026-06-04T12:53:14.2122229Z           "evidence": []
2026-06-04T12:53:14.2123363Z         }
2026-06-04T12:53:14.2124320Z       }
2026-06-04T12:53:14.2125252Z     },
2026-06-04T12:53:14.2126198Z     {
2026-06-04T12:53:14.2127176Z       "id": "REQ-DOCS-3",
2026-06-04T12:53:14.2129278Z       "title": "Diátaxis structure; one canonical way to do X",
2026-06-04T12:53:14.2131090Z       "requiredStages": [],
2026-06-04T12:53:14.2132347Z       "stages": {
2026-06-04T12:53:14.2133389Z         "doc": {
2026-06-04T12:53:14.2134495Z           "complete": false,
2026-06-04T12:53:14.2135746Z           "evidence": []
2026-06-04T12:53:14.2136900Z         },
2026-06-04T12:53:14.2137879Z         "impl": {
2026-06-04T12:53:14.2138970Z           "complete": false,
2026-06-04T12:53:14.2140255Z           "evidence": []
2026-06-04T12:53:14.2141397Z         },
2026-06-04T12:53:14.2142376Z         "int": {
2026-06-04T12:53:14.2143450Z           "complete": false,
2026-06-04T12:53:14.2144697Z           "evidence": []
2026-06-04T12:53:14.2145839Z         },
2026-06-04T12:53:14.2146819Z         "unit": {
2026-06-04T12:53:14.2147902Z           "complete": false,
2026-06-04T12:53:14.2149140Z           "evidence": []
2026-06-04T12:53:14.2150321Z         }
2026-06-04T12:53:14.2151280Z       }
2026-06-04T12:53:14.2152218Z     },
2026-06-04T12:53:14.2153162Z     {
2026-06-04T12:53:14.2154140Z       "id": "REQ-DOCS-4",
2026-06-04T12:53:14.2160212Z       "title": "Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help)",
2026-06-04T12:53:14.2162429Z       "requiredStages": [],
2026-06-04T12:53:14.2163637Z       "stages": {
2026-06-04T12:53:14.2164685Z         "doc": {
2026-06-04T12:53:14.2165757Z           "complete": false,
2026-06-04T12:53:14.2166991Z           "evidence": []
2026-06-04T12:53:14.2168120Z         },
2026-06-04T12:53:14.2169094Z         "impl": {
2026-06-04T12:53:14.2170267Z           "complete": false,
2026-06-04T12:53:14.2171553Z           "evidence": []
2026-06-04T12:53:14.2172683Z         },
2026-06-04T12:53:14.2173654Z         "int": {
2026-06-04T12:53:14.2174730Z           "complete": false,
2026-06-04T12:53:14.2175964Z           "evidence": []
2026-06-04T12:53:14.2177098Z         },
2026-06-04T12:53:14.2178069Z         "unit": {
2026-06-04T12:53:14.2179144Z           "complete": false,
2026-06-04T12:53:14.2180418Z           "evidence": []
2026-06-04T12:53:14.2181566Z         }
2026-06-04T12:53:14.2182526Z       }
2026-06-04T12:53:14.2183458Z     },
2026-06-04T12:53:14.2184400Z     {
2026-06-04T12:53:14.2185378Z       "id": "REQ-DOCS-5",
2026-06-04T12:53:14.2187254Z       "title": "Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked",
2026-06-04T12:53:14.2189408Z       "requiredStages": [],
2026-06-04T12:53:14.2190612Z       "stages": {
2026-06-04T12:53:14.2191656Z         "doc": {
2026-06-04T12:53:14.2192736Z           "complete": false,
2026-06-04T12:53:14.2193979Z           "evidence": []
2026-06-04T12:53:14.2195110Z         },
2026-06-04T12:53:14.2196075Z         "impl": {
2026-06-04T12:53:14.2197141Z           "complete": false,
2026-06-04T12:53:14.2198373Z           "evidence": []
2026-06-04T12:53:14.2199541Z         },
2026-06-04T12:53:14.2200526Z         "int": {
2026-06-04T12:53:14.2201615Z           "complete": false,
2026-06-04T12:53:14.2202842Z           "evidence": []
2026-06-04T12:53:14.2203969Z         },
2026-06-04T12:53:14.2204933Z         "unit": {
2026-06-04T12:53:14.2206354Z           "complete": false,
2026-06-04T12:53:14.2207593Z           "evidence": []
2026-06-04T12:53:14.2208993Z         }
2026-06-04T12:53:14.2210479Z       }
2026-06-04T12:53:14.2211424Z     },
2026-06-04T12:53:14.2212370Z     {
2026-06-04T12:53:14.2213337Z       "id": "REQ-EP-1",
2026-06-04T12:53:14.2214734Z       "title": "Day-one endpoint types; open type system",
2026-06-04T12:53:14.2216384Z       "requiredStages": [
2026-06-04T12:53:14.2217556Z         "impl",
2026-06-04T12:53:14.2218585Z         "unit"
2026-06-04T12:53:14.2219999Z       ],
2026-06-04T12:53:14.2220968Z       "stages": {
2026-06-04T12:53:14.2222012Z         "doc": {
2026-06-04T12:53:14.2223101Z           "complete": false,
2026-06-04T12:53:14.2224342Z           "evidence": []
2026-06-04T12:53:14.2225488Z         },
2026-06-04T12:53:14.2226458Z         "impl": {
2026-06-04T12:53:14.2227551Z           "complete": true,
2026-06-04T12:53:14.2228758Z           "evidence": [
2026-06-04T12:53:14.2230221Z             {
2026-06-04T12:53:14.2231475Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:53:14.2233063Z               "line": 77
2026-06-04T12:53:14.2234211Z             },
2026-06-04T12:53:14.2235273Z             {
2026-06-04T12:53:14.2236504Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:53:14.2238073Z               "line": 94
2026-06-04T12:53:14.2239268Z             }
2026-06-04T12:53:14.2240596Z           ]
2026-06-04T12:53:14.2241561Z         },
2026-06-04T12:53:14.2242518Z         "int": {
2026-06-04T12:53:14.2243602Z           "complete": false,
2026-06-04T12:53:14.2244836Z           "evidence": []
2026-06-04T12:53:14.2245971Z         },
2026-06-04T12:53:14.2246944Z         "unit": {
2026-06-04T12:53:14.2248022Z           "complete": true,
2026-06-04T12:53:14.2249278Z           "evidence": [
2026-06-04T12:53:14.2250399Z             {
2026-06-04T12:53:14.2251613Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:53:14.2253198Z               "line": 161
2026-06-04T12:53:14.2254362Z             },
2026-06-04T12:53:14.2255369Z             {
2026-06-04T12:53:14.2260595Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:53:14.2262345Z               "line": 178
2026-06-04T12:53:14.2263498Z             }
2026-06-04T12:53:14.2264477Z           ]
2026-06-04T12:53:14.2265430Z         }
2026-06-04T12:53:14.2266366Z       }
2026-06-04T12:53:14.2267299Z     },
2026-06-04T12:53:14.2268244Z     {
2026-06-04T12:53:14.2269264Z       "id": "REQ-EP-2",
2026-06-04T12:53:14.2270854Z       "title": "Agent endpoints vs Shells distinction in the type model",
2026-06-04T12:53:14.2272730Z       "requiredStages": [
2026-06-04T12:53:14.2273908Z         "impl",
2026-06-04T12:53:14.2274938Z         "unit"
2026-06-04T12:53:14.2275946Z       ],
2026-06-04T12:53:14.2276898Z       "stages": {
2026-06-04T12:53:14.2277936Z         "doc": {
2026-06-04T12:53:14.2279001Z           "complete": false,
2026-06-04T12:53:14.2280273Z           "evidence": []
2026-06-04T12:53:14.2281432Z         },
2026-06-04T12:53:14.2282403Z         "impl": {
2026-06-04T12:53:14.2283518Z           "complete": true,
2026-06-04T12:53:14.2284727Z           "evidence": [
2026-06-04T12:53:14.2285841Z             {
2026-06-04T12:53:14.2287064Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:53:14.2288848Z               "line": 114
2026-06-04T12:53:14.2290105Z             },
2026-06-04T12:53:14.2291149Z             {
2026-06-04T12:53:14.2292411Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:53:14.2294262Z               "line": 131
2026-06-04T12:53:14.2295410Z             },
2026-06-04T12:53:14.2296409Z             {
2026-06-04T12:53:14.2297611Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:53:14.2299235Z               "line": 138
2026-06-04T12:53:14.2300686Z             }
2026-06-04T12:53:14.2301683Z           ]
2026-06-04T12:53:14.2302647Z         },
2026-06-04T12:53:14.2303609Z         "int": {
2026-06-04T12:53:14.2304680Z           "complete": false,
2026-06-04T12:53:14.2306390Z           "evidence": []
2026-06-04T12:53:14.2307513Z         },
2026-06-04T12:53:14.2308713Z         "unit": {
2026-06-04T12:53:14.2309851Z           "complete": true,
2026-06-04T12:53:14.2311052Z           "evidence": [
2026-06-04T12:53:14.2312152Z             {
2026-06-04T12:53:14.2313368Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:53:14.2314932Z               "line": 193
2026-06-04T12:53:14.2315365Z             },
2026-06-04T12:53:14.2315783Z             {
2026-06-04T12:53:14.2316434Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:53:14.2316888Z               "line": 211
2026-06-04T12:53:14.2317321Z             },
2026-06-04T12:53:14.2317744Z             {
2026-06-04T12:53:14.2318390Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T12:53:14.2318854Z               "line": 224
2026-06-04T12:53:14.2319308Z             }
2026-06-04T12:53:14.2319747Z           ]
2026-06-04T12:53:14.2320183Z         }
2026-06-04T12:53:14.2320611Z       }
2026-06-04T12:53:14.2321034Z     },
2026-06-04T12:53:14.2321442Z     {
2026-06-04T12:53:14.2321916Z       "id": "REQ-EP-3",
2026-06-04T12:53:14.2322968Z       "title": "Messaging payloads carry typed operation commands + file blobs",
2026-06-04T12:53:14.2323457Z       "requiredStages": [
2026-06-04T12:53:14.2323885Z         "impl",
2026-06-04T12:53:14.2324315Z         "unit"
2026-06-04T12:53:14.2324733Z       ],
2026-06-04T12:53:14.2325164Z       "stages": {
2026-06-04T12:53:14.2325593Z         "doc": {
2026-06-04T12:53:14.2326061Z           "complete": false,
2026-06-04T12:53:14.2326520Z           "evidence": []
2026-06-04T12:53:14.2326929Z         },
2026-06-04T12:53:14.2327369Z         "impl": {
2026-06-04T12:53:14.2327842Z           "complete": true,
2026-06-04T12:53:14.2328295Z           "evidence": [
2026-06-04T12:53:14.2328720Z             {
2026-06-04T12:53:14.2329409Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:53:14.2329891Z               "line": 31
2026-06-04T12:53:14.2330312Z             },
2026-06-04T12:53:14.2330739Z             {
2026-06-04T12:53:14.2331396Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:53:14.2331840Z               "line": 49
2026-06-04T12:53:14.2332263Z             }
2026-06-04T12:53:14.2332688Z           ]
2026-06-04T12:53:14.2333118Z         },
2026-06-04T12:53:14.2333539Z         "int": {
2026-06-04T12:53:14.2334015Z           "complete": false,
2026-06-04T12:53:14.2334480Z           "evidence": []
2026-06-04T12:53:14.2334893Z         },
2026-06-04T12:53:14.2335326Z         "unit": {
2026-06-04T12:53:14.2335793Z           "complete": true,
2026-06-04T12:53:14.2336244Z           "evidence": [
2026-06-04T12:53:14.2336663Z             {
2026-06-04T12:53:14.2337315Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:53:14.2337770Z               "line": 156
2026-06-04T12:53:14.2338192Z             },
2026-06-04T12:53:14.2338617Z             {
2026-06-04T12:53:14.2339303Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:53:14.2339768Z               "line": 164
2026-06-04T12:53:14.2340207Z             },
2026-06-04T12:53:14.2340645Z             {
2026-06-04T12:53:14.2341291Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:53:14.2341746Z               "line": 177
2026-06-04T12:53:14.2342176Z             },
2026-06-04T12:53:14.2342590Z             {
2026-06-04T12:53:14.2343232Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:53:14.2343679Z               "line": 197
2026-06-04T12:53:14.2344106Z             },
2026-06-04T12:53:14.2344537Z             {
2026-06-04T12:53:14.2345170Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:53:14.2345624Z               "line": 213
2026-06-04T12:53:14.2346047Z             },
2026-06-04T12:53:14.2346474Z             {
2026-06-04T12:53:14.2347107Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T12:53:14.2347573Z               "line": 227
2026-06-04T12:53:14.2348201Z             }
2026-06-04T12:53:14.2348627Z           ]
2026-06-04T12:53:14.2349055Z         }
2026-06-04T12:53:14.2349651Z       }
2026-06-04T12:53:14.2353880Z     },
2026-06-04T12:53:14.2354380Z     {
2026-06-04T12:53:14.2354865Z       "id": "REQ-EP-4",
2026-06-04T12:53:14.2355785Z       "title": "PresenceChannel broker endpoint (seam day-one)",
2026-06-04T12:53:14.2356258Z       "requiredStages": [
2026-06-04T12:53:14.2356693Z         "impl",
2026-06-04T12:53:14.2357115Z         "unit"
2026-06-04T12:53:14.2357540Z       ],
2026-06-04T12:53:14.2357969Z       "stages": {
2026-06-04T12:53:14.2358399Z         "doc": {
2026-06-04T12:53:14.2358877Z           "complete": false,
2026-06-04T12:53:14.2359425Z           "evidence": []
2026-06-04T12:53:14.2359854Z         },
2026-06-04T12:53:14.2360286Z         "impl": {
2026-06-04T12:53:14.2360764Z           "complete": true,
2026-06-04T12:53:14.2361212Z           "evidence": [
2026-06-04T12:53:14.2361643Z             {
2026-06-04T12:53:14.2362293Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:53:14.2362738Z               "line": 419
2026-06-04T12:53:14.2363171Z             },
2026-06-04T12:53:14.2363588Z             {
2026-06-04T12:53:14.2364210Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:53:14.2364661Z               "line": 631
2026-06-04T12:53:14.2365095Z             },
2026-06-04T12:53:14.2365519Z             {
2026-06-04T12:53:14.2366142Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:53:14.2366600Z               "line": 696
2026-06-04T12:53:14.2367026Z             },
2026-06-04T12:53:14.2367445Z             {
2026-06-04T12:53:14.2368033Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:53:14.2368491Z               "line": 83
2026-06-04T12:53:14.2368922Z             },
2026-06-04T12:53:14.2369387Z             {
2026-06-04T12:53:14.2369990Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:53:14.2370437Z               "line": 407
2026-06-04T12:53:14.2370875Z             },
2026-06-04T12:53:14.2371289Z             {
2026-06-04T12:53:14.2371888Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:53:14.2372354Z               "line": 478
2026-06-04T12:53:14.2372775Z             },
2026-06-04T12:53:14.2373196Z             {
2026-06-04T12:53:14.2373820Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.2374278Z               "line": 181
2026-06-04T12:53:14.2374705Z             },
2026-06-04T12:53:14.2375120Z             {
2026-06-04T12:53:14.2375765Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.2376213Z               "line": 306
2026-06-04T12:53:14.2376638Z             },
2026-06-04T12:53:14.2377051Z             {
2026-06-04T12:53:14.2377690Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T12:53:14.2378145Z               "line": 613
2026-06-04T12:53:14.2378563Z             }
2026-06-04T12:53:14.2378979Z           ]
2026-06-04T12:53:14.2379443Z         },
2026-06-04T12:53:14.2379880Z         "int": {
2026-06-04T12:53:14.2380352Z           "complete": false,
2026-06-04T12:53:14.2380820Z           "evidence": []
2026-06-04T12:53:14.2381245Z         },
2026-06-04T12:53:14.2381670Z         "unit": {
2026-06-04T12:53:14.2382138Z           "complete": true,
2026-06-04T12:53:14.2382583Z           "evidence": [
2026-06-04T12:53:14.2383007Z             {
2026-06-04T12:53:14.2383597Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T12:53:14.2384059Z               "line": 551
2026-06-04T12:53:14.2384493Z             },
2026-06-04T12:53:14.2384909Z             {
2026-06-04T12:53:14.2385590Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-04T12:53:14.2386037Z               "line": 75
2026-06-04T12:53:14.2386463Z             },
2026-06-04T12:53:14.2386878Z             {
2026-06-04T12:53:14.2387556Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-04T12:53:14.2388006Z               "line": 131
2026-06-04T12:53:14.2388687Z             }
2026-06-04T12:53:14.2389114Z           ]
2026-06-04T12:53:14.2389580Z         }
2026-06-04T12:53:14.2390150Z       }
2026-06-04T12:53:14.2390565Z     },
2026-06-04T12:53:14.2390986Z     {
2026-06-04T12:53:14.2391439Z       "id": "REQ-EP-5",
2026-06-04T12:53:14.2395730Z       "title": "Concrete shell instantiation model: spawn-mints-instance (vs relink/online), registered-on-node permission + broadcast-is-discovery, per-shell require_approval gate, max_instances_per_owner + over_cap, instance aliasing, discovery scope",
2026-06-04T12:53:14.2396223Z       "requiredStages": [],
2026-06-04T12:53:14.2396660Z       "stages": {
2026-06-04T12:53:14.2397094Z         "doc": {
2026-06-04T12:53:14.2397566Z           "complete": false,
2026-06-04T12:53:14.2398020Z           "evidence": []
2026-06-04T12:53:14.2398441Z         },
2026-06-04T12:53:14.2398874Z         "impl": {
2026-06-04T12:53:14.2399390Z           "complete": false,
2026-06-04T12:53:14.2399853Z           "evidence": []
2026-06-04T12:53:14.2400306Z         },
2026-06-04T12:53:14.2400729Z         "int": {
2026-06-04T12:53:14.2401204Z           "complete": false,
2026-06-04T12:53:14.2401672Z           "evidence": []
2026-06-04T12:53:14.2402086Z         },
2026-06-04T12:53:14.2402518Z         "unit": {
2026-06-04T12:53:14.2402982Z           "complete": false,
2026-06-04T12:53:14.2403433Z           "evidence": []
2026-06-04T12:53:14.2403849Z         }
2026-06-04T12:53:14.2404272Z       }
2026-06-04T12:53:14.2404691Z     },
2026-06-04T12:53:14.2405099Z     {
2026-06-04T12:53:14.2405574Z       "id": "REQ-FRONT-1",
2026-06-04T12:53:14.2406554Z       "title": "Day-one launcher/manager frontend (list/launch/attach/init)",
2026-06-04T12:53:14.2407045Z       "requiredStages": [],
2026-06-04T12:53:14.2407480Z       "stages": {
2026-06-04T12:53:14.2407916Z         "doc": {
2026-06-04T12:53:14.2408395Z           "complete": false,
2026-06-04T12:53:14.2408846Z           "evidence": []
2026-06-04T12:53:14.2409311Z         },
2026-06-04T12:53:14.2409747Z         "impl": {
2026-06-04T12:53:14.2410224Z           "complete": false,
2026-06-04T12:53:14.2410669Z           "evidence": []
2026-06-04T12:53:14.2411097Z         },
2026-06-04T12:53:14.2411524Z         "int": {
2026-06-04T12:53:14.2411992Z           "complete": false,
2026-06-04T12:53:14.2412451Z           "evidence": []
2026-06-04T12:53:14.2412869Z         },
2026-06-04T12:53:14.2413308Z         "unit": {
2026-06-04T12:53:14.2413778Z           "complete": false,
2026-06-04T12:53:14.2414235Z           "evidence": []
2026-06-04T12:53:14.2414656Z         }
2026-06-04T12:53:14.2415069Z       }
2026-06-04T12:53:14.2415488Z     },
2026-06-04T12:53:14.2415895Z     {
2026-06-04T12:53:14.2416512Z       "id": "REQ-HAZARD-CASCADE-WIPE-GUARD",
2026-06-04T12:53:14.2417498Z       "title": "No hard-delete of a parent hosting non-empty children (6.3)",
2026-06-04T12:53:14.2417984Z       "requiredStages": [
2026-06-04T12:53:14.2418419Z         "impl",
2026-06-04T12:53:14.2418848Z         "unit"
2026-06-04T12:53:14.2419325Z       ],
2026-06-04T12:53:14.2419763Z       "stages": {
2026-06-04T12:53:14.2420192Z         "doc": {
2026-06-04T12:53:14.2420667Z           "complete": false,
2026-06-04T12:53:14.2421121Z           "evidence": []
2026-06-04T12:53:14.2421541Z         },
2026-06-04T12:53:14.2421965Z         "impl": {
2026-06-04T12:53:14.2422435Z           "complete": true,
2026-06-04T12:53:14.2422886Z           "evidence": [
2026-06-04T12:53:14.2423310Z             {
2026-06-04T12:53:14.2423950Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.2424405Z               "line": 119
2026-06-04T12:53:14.2424830Z             },
2026-06-04T12:53:14.2425249Z             {
2026-06-04T12:53:14.2425851Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:53:14.2426293Z               "line": 18
2026-06-04T12:53:14.2426713Z             },
2026-06-04T12:53:14.2427129Z             {
2026-06-04T12:53:14.2427733Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:53:14.2428366Z               "line": 94
2026-06-04T12:53:14.2428789Z             }
2026-06-04T12:53:14.2429264Z           ]
2026-06-04T12:53:14.2429838Z         },
2026-06-04T12:53:14.2430282Z         "int": {
2026-06-04T12:53:14.2430748Z           "complete": false,
2026-06-04T12:53:14.2431207Z           "evidence": []
2026-06-04T12:53:14.2431627Z         },
2026-06-04T12:53:14.2432047Z         "unit": {
2026-06-04T12:53:14.2432512Z           "complete": true,
2026-06-04T12:53:14.2432952Z           "evidence": [
2026-06-04T12:53:14.2433381Z             {
2026-06-04T12:53:14.2434013Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.2434467Z               "line": 363
2026-06-04T12:53:14.2438236Z             },
2026-06-04T12:53:14.2438729Z             {
2026-06-04T12:53:14.2439440Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:53:14.2439901Z               "line": 152
2026-06-04T12:53:14.2440331Z             },
2026-06-04T12:53:14.2440742Z             {
2026-06-04T12:53:14.2441377Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:53:14.2441827Z               "line": 188
2026-06-04T12:53:14.2442251Z             }
2026-06-04T12:53:14.2442673Z           ]
2026-06-04T12:53:14.2443086Z         }
2026-06-04T12:53:14.2443508Z       }
2026-06-04T12:53:14.2443915Z     },
2026-06-04T12:53:14.2444337Z     {
2026-06-04T12:53:14.2444970Z       "id": "REQ-HAZARD-CONFLICT-BOTH-PRESERVED",
2026-06-04T12:53:14.2448609Z       "title": "A surfaced concurrent context pair is durably preserved (both versions, tracked artifacts) until a strictly dominating write clears it; no reconcile failure path discards an unmerged version (6.6, ADR-0013)",
2026-06-04T12:53:14.2449101Z       "requiredStages": [
2026-06-04T12:53:14.2449568Z         "impl",
2026-06-04T12:53:14.2449999Z         "unit"
2026-06-04T12:53:14.2450423Z       ],
2026-06-04T12:53:14.2450855Z       "stages": {
2026-06-04T12:53:14.2451288Z         "doc": {
2026-06-04T12:53:14.2451758Z           "complete": false,
2026-06-04T12:53:14.2452223Z           "evidence": []
2026-06-04T12:53:14.2452639Z         },
2026-06-04T12:53:14.2453072Z         "impl": {
2026-06-04T12:53:14.2453555Z           "complete": true,
2026-06-04T12:53:14.2454004Z           "evidence": [
2026-06-04T12:53:14.2454419Z             {
2026-06-04T12:53:14.2455064Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T12:53:14.2455513Z               "line": 22
2026-06-04T12:53:14.2455931Z             },
2026-06-04T12:53:14.2456358Z             {
2026-06-04T12:53:14.2456960Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.2457401Z               "line": 417
2026-06-04T12:53:14.2457832Z             },
2026-06-04T12:53:14.2458249Z             {
2026-06-04T12:53:14.2458881Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T12:53:14.2459355Z               "line": 17
2026-06-04T12:53:14.2459784Z             },
2026-06-04T12:53:14.2460205Z             {
2026-06-04T12:53:14.2460835Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T12:53:14.2461306Z               "line": 125
2026-06-04T12:53:14.2461729Z             },
2026-06-04T12:53:14.2462161Z             {
2026-06-04T12:53:14.2462843Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.2463294Z               "line": 169
2026-06-04T12:53:14.2463714Z             },
2026-06-04T12:53:14.2464135Z             {
2026-06-04T12:53:14.2464816Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.2465263Z               "line": 197
2026-06-04T12:53:14.2465735Z             },
2026-06-04T12:53:14.2466146Z             {
2026-06-04T12:53:14.2466835Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.2467285Z               "line": 223
2026-06-04T12:53:14.2467706Z             },
2026-06-04T12:53:14.2468127Z             {
2026-06-04T12:53:14.2468769Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:53:14.2469249Z               "line": 122
2026-06-04T12:53:14.2469981Z             },
2026-06-04T12:53:14.2470402Z             {
2026-06-04T12:53:14.2471047Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:53:14.2471649Z               "line": 222
2026-06-04T12:53:14.2472079Z             }
2026-06-04T12:53:14.2472500Z           ]
2026-06-04T12:53:14.2472925Z         },
2026-06-04T12:53:14.2473350Z         "int": {
2026-06-04T12:53:14.2473819Z           "complete": false,
2026-06-04T12:53:14.2474276Z           "evidence": []
2026-06-04T12:53:14.2474689Z         },
2026-06-04T12:53:14.2475211Z         "unit": {
2026-06-04T12:53:14.2475673Z           "complete": true,
2026-06-04T12:53:14.2476121Z           "evidence": [
2026-06-04T12:53:14.2476541Z             {
2026-06-04T12:53:14.2477189Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T12:53:14.2477639Z               "line": 53
2026-06-04T12:53:14.2478055Z             },
2026-06-04T12:53:14.2478471Z             {
2026-06-04T12:53:14.2479114Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T12:53:14.2479627Z               "line": 60
2026-06-04T12:53:14.2480391Z             },
2026-06-04T12:53:14.2480827Z             {
2026-06-04T12:53:14.2481487Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T12:53:14.2481925Z               "line": 72
2026-06-04T12:53:14.2482352Z             },
2026-06-04T12:53:14.2482767Z             {
2026-06-04T12:53:14.2483409Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:53:14.2483861Z               "line": 298
2026-06-04T12:53:14.2484275Z             },
2026-06-04T12:53:14.2484702Z             {
2026-06-04T12:53:14.2485326Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T12:53:14.2485778Z               "line": 247
2026-06-04T12:53:14.2486198Z             },
2026-06-04T12:53:14.2486618Z             {
2026-06-04T12:53:14.2487252Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T12:53:14.2487693Z               "line": 282
2026-06-04T12:53:14.2488133Z             },
2026-06-04T12:53:14.2488547Z             {
2026-06-04T12:53:14.2489234Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T12:53:14.2489699Z               "line": 313
2026-06-04T12:53:14.2490127Z             },
2026-06-04T12:53:14.2490549Z             {
2026-06-04T12:53:14.2491230Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.2491684Z               "line": 400
2026-06-04T12:53:14.2492099Z             },
2026-06-04T12:53:14.2492524Z             {
2026-06-04T12:53:14.2493159Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:53:14.2493613Z               "line": 383
2026-06-04T12:53:14.2494035Z             },
2026-06-04T12:53:14.2494449Z             {
2026-06-04T12:53:14.2495099Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:53:14.2495541Z               "line": 420
2026-06-04T12:53:14.2495966Z             }
2026-06-04T12:53:14.2496377Z           ]
2026-06-04T12:53:14.2496804Z         }
2026-06-04T12:53:14.2497223Z       }
2026-06-04T12:53:14.2497629Z     },
2026-06-04T12:53:14.2498048Z     {
2026-06-04T12:53:14.2498566Z       "id": "REQ-HAZARD-CONPTY-DSR",
2026-06-04T12:53:14.2499874Z       "title": "ConPTY reader must auto-answer DSR (ESC[6n) or all child output stalls (5.5)",
2026-06-04T12:53:14.2500355Z       "requiredStages": [
2026-06-04T12:53:14.2500791Z         "impl",
2026-06-04T12:53:14.2501214Z         "unit"
2026-06-04T12:53:14.2501624Z       ],
2026-06-04T12:53:14.2502056Z       "stages": {
2026-06-04T12:53:14.2502474Z         "doc": {
2026-06-04T12:53:14.2502946Z           "complete": false,
2026-06-04T12:53:14.2503390Z           "evidence": []
2026-06-04T12:53:14.2503815Z         },
2026-06-04T12:53:14.2504254Z         "impl": {
2026-06-04T12:53:14.2504715Z           "complete": true,
2026-06-04T12:53:14.2505171Z           "evidence": [
2026-06-04T12:53:14.2505584Z             {
2026-06-04T12:53:14.2506185Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T12:53:14.2506806Z               "line": 164
2026-06-04T12:53:14.2507229Z             }
2026-06-04T12:53:14.2507653Z           ]
2026-06-04T12:53:14.2508208Z         },
2026-06-04T12:53:14.2508647Z         "int": {
2026-06-04T12:53:14.2509107Z           "complete": true,
2026-06-04T12:53:14.2509606Z           "evidence": [
2026-06-04T12:53:14.2510027Z             {
2026-06-04T12:53:14.2510632Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-04T12:53:14.2511084Z               "line": 44
2026-06-04T12:53:14.2511502Z             },
2026-06-04T12:53:14.2511924Z             {
2026-06-04T12:53:14.2512505Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-04T12:53:14.2512960Z               "line": 66
2026-06-04T12:53:14.2513379Z             }
2026-06-04T12:53:14.2513800Z           ]
2026-06-04T12:53:14.2514220Z         },
2026-06-04T12:53:14.2514648Z         "unit": {
2026-06-04T12:53:14.2515117Z           "complete": true,
2026-06-04T12:53:14.2515558Z           "evidence": [
2026-06-04T12:53:14.2515994Z             {
2026-06-04T12:53:14.2516588Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T12:53:14.2517050Z               "line": 181
2026-06-04T12:53:14.2517472Z             },
2026-06-04T12:53:14.2517886Z             {
2026-06-04T12:53:14.2518485Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T12:53:14.2518924Z               "line": 233
2026-06-04T12:53:14.2519390Z             },
2026-06-04T12:53:14.2522986Z             {
2026-06-04T12:53:14.2523693Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T12:53:14.2524153Z               "line": 261
2026-06-04T12:53:14.2524572Z             }
2026-06-04T12:53:14.2524992Z           ]
2026-06-04T12:53:14.2525404Z         }
2026-06-04T12:53:14.2525824Z       }
2026-06-04T12:53:14.2526232Z     },
2026-06-04T12:53:14.2526644Z     {
2026-06-04T12:53:14.2527259Z       "id": "REQ-HAZARD-DAEMON-HOSTED-LIVENESS",
2026-06-04T12:53:14.2529975Z       "title": "Daemon-hosted perches (Psyche, spt-hosted Self) derive liveness from the daemon endpoint table + info.json status, never is_process_alive(info.pid) (2.5)",
2026-06-04T12:53:14.2530515Z       "requiredStages": [
2026-06-04T12:53:14.2530940Z         "impl",
2026-06-04T12:53:14.2531369Z         "unit",
2026-06-04T12:53:14.2531795Z         "int"
2026-06-04T12:53:14.2532205Z       ],
2026-06-04T12:53:14.2532690Z       "stages": {
2026-06-04T12:53:14.2533168Z         "doc": {
2026-06-04T12:53:14.2533661Z           "complete": false,
2026-06-04T12:53:14.2534111Z           "evidence": []
2026-06-04T12:53:14.2534531Z         },
2026-06-04T12:53:14.2534970Z         "impl": {
2026-06-04T12:53:14.2535430Z           "complete": true,
2026-06-04T12:53:14.2535878Z           "evidence": [
2026-06-04T12:53:14.2536292Z             {
2026-06-04T12:53:14.2536949Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2537398Z               "line": 150
2026-06-04T12:53:14.2537826Z             },
2026-06-04T12:53:14.2538248Z             {
2026-06-04T12:53:14.2538907Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2539411Z               "line": 169
2026-06-04T12:53:14.2539851Z             },
2026-06-04T12:53:14.2540276Z             {
2026-06-04T12:53:14.2540876Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.2541319Z               "line": 79
2026-06-04T12:53:14.2541741Z             },
2026-06-04T12:53:14.2542154Z             {
2026-06-04T12:53:14.2542721Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:53:14.2543160Z               "line": 51
2026-06-04T12:53:14.2543590Z             },
2026-06-04T12:53:14.2544006Z             {
2026-06-04T12:53:14.2544715Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.2545181Z               "line": 126
2026-06-04T12:53:14.2545599Z             },
2026-06-04T12:53:14.2546047Z             {
2026-06-04T12:53:14.2546675Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:53:14.2547119Z               "line": 27
2026-06-04T12:53:14.2547823Z             },
2026-06-04T12:53:14.2548249Z             {
2026-06-04T12:53:14.2549020Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:53:14.2549514Z               "line": 79
2026-06-04T12:53:14.2549945Z             },
2026-06-04T12:53:14.2550353Z             {
2026-06-04T12:53:14.2551002Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:53:14.2551448Z               "line": 102
2026-06-04T12:53:14.2551870Z             },
2026-06-04T12:53:14.2552288Z             {
2026-06-04T12:53:14.2552912Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.2553361Z               "line": 108
2026-06-04T12:53:14.2553774Z             }
2026-06-04T12:53:14.2554192Z           ]
2026-06-04T12:53:14.2554600Z         },
2026-06-04T12:53:14.2555025Z         "int": {
2026-06-04T12:53:14.2555591Z           "complete": true,
2026-06-04T12:53:14.2556033Z           "evidence": [
2026-06-04T12:53:14.2556454Z             {
2026-06-04T12:53:14.2557142Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T12:53:14.2557591Z               "line": 35
2026-06-04T12:53:14.2558018Z             }
2026-06-04T12:53:14.2558430Z           ]
2026-06-04T12:53:14.2558844Z         },
2026-06-04T12:53:14.2559306Z         "unit": {
2026-06-04T12:53:14.2559773Z           "complete": true,
2026-06-04T12:53:14.2560213Z           "evidence": [
2026-06-04T12:53:14.2560625Z             {
2026-06-04T12:53:14.2561269Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2561719Z               "line": 544
2026-06-04T12:53:14.2562142Z             },
2026-06-04T12:53:14.2562553Z             {
2026-06-04T12:53:14.2563139Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.2563578Z               "line": 286
2026-06-04T12:53:14.2563997Z             },
2026-06-04T12:53:14.2564420Z             {
2026-06-04T12:53:14.2565050Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:53:14.2565511Z               "line": 124
2026-06-04T12:53:14.2565924Z             },
2026-06-04T12:53:14.2566339Z             {
2026-06-04T12:53:14.2566974Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:53:14.2567424Z               "line": 136
2026-06-04T12:53:14.2567841Z             },
2026-06-04T12:53:14.2568246Z             {
2026-06-04T12:53:14.2568873Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:53:14.2569345Z               "line": 146
2026-06-04T12:53:14.2569772Z             },
2026-06-04T12:53:14.2570186Z             {
2026-06-04T12:53:14.2570819Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:53:14.2571267Z               "line": 159
2026-06-04T12:53:14.2571679Z             },
2026-06-04T12:53:14.2572098Z             {
2026-06-04T12:53:14.2572729Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T12:53:14.2573177Z               "line": 171
2026-06-04T12:53:14.2573586Z             },
2026-06-04T12:53:14.2574019Z             {
2026-06-04T12:53:14.2574656Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.2575110Z               "line": 207
2026-06-04T12:53:14.2575530Z             }
2026-06-04T12:53:14.2575937Z           ]
2026-06-04T12:53:14.2576351Z         }
2026-06-04T12:53:14.2576764Z       }
2026-06-04T12:53:14.2577172Z     },
2026-06-04T12:53:14.2577575Z     {
2026-06-04T12:53:14.2578198Z       "id": "REQ-HAZARD-DAEMON-SCHED-NONBLOCKING",
2026-06-04T12:53:14.2582446Z       "title": "Per-agent pulse/psyche/echo-commune scheduling must not serialize across agents: each agent's bounded LLM call (echo-commune summarizer, Psyche turn) runs off the shared scheduler so one slow/hung call cannot stall another agent's tick (7.4)",
2026-06-04T12:53:14.2582938Z       "requiredStages": [],
2026-06-04T12:53:14.2583373Z       "stages": {
2026-06-04T12:53:14.2583796Z         "doc": {
2026-06-04T12:53:14.2584253Z           "complete": false,
2026-06-04T12:53:14.2584706Z           "evidence": []
2026-06-04T12:53:14.2585292Z         },
2026-06-04T12:53:14.2585732Z         "impl": {
2026-06-04T12:53:14.2586194Z           "complete": false,
2026-06-04T12:53:14.2586780Z           "evidence": []
2026-06-04T12:53:14.2587197Z         },
2026-06-04T12:53:14.2587615Z         "int": {
2026-06-04T12:53:14.2588078Z           "complete": false,
2026-06-04T12:53:14.2588519Z           "evidence": []
2026-06-04T12:53:14.2588931Z         },
2026-06-04T12:53:14.2589392Z         "unit": {
2026-06-04T12:53:14.2589868Z           "complete": false,
2026-06-04T12:53:14.2590324Z           "evidence": []
2026-06-04T12:53:14.2590739Z         }
2026-06-04T12:53:14.2591156Z       }
2026-06-04T12:53:14.2591561Z     },
2026-06-04T12:53:14.2591963Z     {
2026-06-04T12:53:14.2592483Z       "id": "REQ-HAZARD-DEFERRED-DRAIN",
2026-06-04T12:53:14.2593514Z       "title": "Deferred spool rows excluded from the event-stream drain (1.4)",
2026-06-04T12:53:14.2593982Z       "requiredStages": [
2026-06-04T12:53:14.2594405Z         "impl",
2026-06-04T12:53:14.2594838Z         "unit"
2026-06-04T12:53:14.2595251Z       ],
2026-06-04T12:53:14.2595681Z       "stages": {
2026-06-04T12:53:14.2596127Z         "doc": {
2026-06-04T12:53:14.2596599Z           "complete": false,
2026-06-04T12:53:14.2597052Z           "evidence": []
2026-06-04T12:53:14.2597464Z         },
2026-06-04T12:53:14.2597888Z         "impl": {
2026-06-04T12:53:14.2598336Z           "complete": true,
2026-06-04T12:53:14.2598780Z           "evidence": [
2026-06-04T12:53:14.2599224Z             {
2026-06-04T12:53:14.2599829Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2600276Z               "line": 40
2026-06-04T12:53:14.2600687Z             },
2026-06-04T12:53:14.2601104Z             {
2026-06-04T12:53:14.2601691Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2602139Z               "line": 98
2026-06-04T12:53:14.2602549Z             },
2026-06-04T12:53:14.2602966Z             {
2026-06-04T12:53:14.2603565Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2604023Z               "line": 209
2026-06-04T12:53:14.2604444Z             },
2026-06-04T12:53:14.2604863Z             {
2026-06-04T12:53:14.2605464Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2609139Z               "line": 291
2026-06-04T12:53:14.2609744Z             }
2026-06-04T12:53:14.2610170Z           ]
2026-06-04T12:53:14.2610590Z         },
2026-06-04T12:53:14.2611024Z         "int": {
2026-06-04T12:53:14.2611494Z           "complete": false,
2026-06-04T12:53:14.2611954Z           "evidence": []
2026-06-04T12:53:14.2612366Z         },
2026-06-04T12:53:14.2612808Z         "unit": {
2026-06-04T12:53:14.2613310Z           "complete": true,
2026-06-04T12:53:14.2613749Z           "evidence": [
2026-06-04T12:53:14.2614171Z             {
2026-06-04T12:53:14.2614776Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2615237Z               "line": 326
2026-06-04T12:53:14.2615756Z             },
2026-06-04T12:53:14.2616200Z             {
2026-06-04T12:53:14.2616803Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2617257Z               "line": 372
2026-06-04T12:53:14.2617677Z             },
2026-06-04T12:53:14.2618089Z             {
2026-06-04T12:53:14.2618691Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2619135Z               "line": 413
2026-06-04T12:53:14.2619610Z             },
2026-06-04T12:53:14.2620036Z             {
2026-06-04T12:53:14.2620626Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2621080Z               "line": 432
2026-06-04T12:53:14.2621498Z             }
2026-06-04T12:53:14.2621920Z           ]
2026-06-04T12:53:14.2622328Z         }
2026-06-04T12:53:14.2622750Z       }
2026-06-04T12:53:14.2623167Z     },
2026-06-04T12:53:14.2623577Z     {
2026-06-04T12:53:14.2624189Z       "id": "REQ-HAZARD-DEFERRED-SURVIVE-DRAIN",
2026-06-04T12:53:14.2624930Z       "title": "Deferred rows survive poll drain (4.4)",
2026-06-04T12:53:14.2625711Z       "requiredStages": [
2026-06-04T12:53:14.2626147Z         "impl",
2026-06-04T12:53:14.2626733Z         "unit"
2026-06-04T12:53:14.2627244Z       ],
2026-06-04T12:53:14.2627743Z       "stages": {
2026-06-04T12:53:14.2628196Z         "doc": {
2026-06-04T12:53:14.2628659Z           "complete": false,
2026-06-04T12:53:14.2629114Z           "evidence": []
2026-06-04T12:53:14.2629883Z         },
2026-06-04T12:53:14.2630340Z         "impl": {
2026-06-04T12:53:14.2630812Z           "complete": true,
2026-06-04T12:53:14.2631262Z           "evidence": [
2026-06-04T12:53:14.2631685Z             {
2026-06-04T12:53:14.2632286Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2632737Z               "line": 111
2026-06-04T12:53:14.2633156Z             },
2026-06-04T12:53:14.2633581Z             {
2026-06-04T12:53:14.2634183Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2634620Z               "line": 202
2026-06-04T12:53:14.2635059Z             }
2026-06-04T12:53:14.2635480Z           ]
2026-06-04T12:53:14.2635900Z         },
2026-06-04T12:53:14.2636315Z         "int": {
2026-06-04T12:53:14.2636794Z           "complete": false,
2026-06-04T12:53:14.2637246Z           "evidence": []
2026-06-04T12:53:14.2637714Z         },
2026-06-04T12:53:14.2638216Z         "unit": {
2026-06-04T12:53:14.2638679Z           "complete": true,
2026-06-04T12:53:14.2639129Z           "evidence": [
2026-06-04T12:53:14.2639888Z             {
2026-06-04T12:53:14.2640511Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2640961Z               "line": 347
2026-06-04T12:53:14.2641382Z             },
2026-06-04T12:53:14.2641809Z             {
2026-06-04T12:53:14.2642406Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.2642859Z               "line": 391
2026-06-04T12:53:14.2643276Z             }
2026-06-04T12:53:14.2643703Z           ]
2026-06-04T12:53:14.2644113Z         }
2026-06-04T12:53:14.2644521Z       }
2026-06-04T12:53:14.2644955Z     },
2026-06-04T12:53:14.2645369Z     {
2026-06-04T12:53:14.2645992Z       "id": "REQ-HAZARD-DIRECT-WRITE-PRECEDENCE",
2026-06-04T12:53:14.2647260Z       "title": "Direct-write precedence marker (with node id) guards stale overwrite (6.5)",
2026-06-04T12:53:14.2647747Z       "requiredStages": [
2026-06-04T12:53:14.2648176Z         "impl",
2026-06-04T12:53:14.2648598Z         "unit"
2026-06-04T12:53:14.2649021Z       ],
2026-06-04T12:53:14.2649669Z       "stages": {
2026-06-04T12:53:14.2650273Z         "doc": {
2026-06-04T12:53:14.2650734Z           "complete": false,
2026-06-04T12:53:14.2651189Z           "evidence": []
2026-06-04T12:53:14.2651607Z         },
2026-06-04T12:53:14.2652026Z         "impl": {
2026-06-04T12:53:14.2652492Z           "complete": true,
2026-06-04T12:53:14.2652930Z           "evidence": [
2026-06-04T12:53:14.2653347Z             {
2026-06-04T12:53:14.2653948Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:53:14.2654400Z               "line": 26
2026-06-04T12:53:14.2654835Z             },
2026-06-04T12:53:14.2655245Z             {
2026-06-04T12:53:14.2655855Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:53:14.2656312Z               "line": 126
2026-06-04T12:53:14.2656736Z             },
2026-06-04T12:53:14.2657153Z             {
2026-06-04T12:53:14.2657822Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:53:14.2658271Z               "line": 26
2026-06-04T12:53:14.2658684Z             },
2026-06-04T12:53:14.2659107Z             {
2026-06-04T12:53:14.2660150Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:53:14.2660609Z               "line": 233
2026-06-04T12:53:14.2661024Z             }
2026-06-04T12:53:14.2661446Z           ]
2026-06-04T12:53:14.2661865Z         },
2026-06-04T12:53:14.2662284Z         "int": {
2026-06-04T12:53:14.2662753Z           "complete": false,
2026-06-04T12:53:14.2663197Z           "evidence": []
2026-06-04T12:53:14.2663611Z         },
2026-06-04T12:53:14.2664242Z         "unit": {
2026-06-04T12:53:14.2664717Z           "complete": true,
2026-06-04T12:53:14.2665319Z           "evidence": [
2026-06-04T12:53:14.2665730Z             {
2026-06-04T12:53:14.2666434Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:53:14.2666878Z               "line": 152
2026-06-04T12:53:14.2667305Z             },
2026-06-04T12:53:14.2667726Z             {
2026-06-04T12:53:14.2668339Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:53:14.2668793Z               "line": 161
2026-06-04T12:53:14.2669257Z             },
2026-06-04T12:53:14.2670012Z             {
2026-06-04T12:53:14.2670620Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:53:14.2671071Z               "line": 170
2026-06-04T12:53:14.2671484Z             },
2026-06-04T12:53:14.2671906Z             {
2026-06-04T12:53:14.2672512Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:53:14.2672954Z               "line": 179
2026-06-04T12:53:14.2673397Z             },
2026-06-04T12:53:14.2673812Z             {
2026-06-04T12:53:14.2674418Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:53:14.2674879Z               "line": 188
2026-06-04T12:53:14.2675297Z             },
2026-06-04T12:53:14.2675714Z             {
2026-06-04T12:53:14.2676308Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:53:14.2676767Z               "line": 199
2026-06-04T12:53:14.2677181Z             },
2026-06-04T12:53:14.2677602Z             {
2026-06-04T12:53:14.2678209Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T12:53:14.2678652Z               "line": 225
2026-06-04T12:53:14.2679073Z             },
2026-06-04T12:53:14.2679527Z             {
2026-06-04T12:53:14.2680134Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:53:14.2680576Z               "line": 245
2026-06-04T12:53:14.2680998Z             },
2026-06-04T12:53:14.2681419Z             {
2026-06-04T12:53:14.2682014Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:53:14.2682475Z               "line": 212
2026-06-04T12:53:14.2682901Z             },
2026-06-04T12:53:14.2683320Z             {
2026-06-04T12:53:14.2683985Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:53:14.2684443Z               "line": 256
2026-06-04T12:53:14.2684866Z             },
2026-06-04T12:53:14.2685278Z             {
2026-06-04T12:53:14.2685944Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:53:14.2686386Z               "line": 281
2026-06-04T12:53:14.2686810Z             },
2026-06-04T12:53:14.2687219Z             {
2026-06-04T12:53:14.2687889Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:53:14.2688343Z               "line": 293
2026-06-04T12:53:14.2692387Z             },
2026-06-04T12:53:14.2692921Z             {
2026-06-04T12:53:14.2693612Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T12:53:14.2694071Z               "line": 303
2026-06-04T12:53:14.2694521Z             },
2026-06-04T12:53:14.2694941Z             {
2026-06-04T12:53:14.2695590Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:53:14.2696053Z               "line": 502
2026-06-04T12:53:14.2696472Z             }
2026-06-04T12:53:14.2696883Z           ]
2026-06-04T12:53:14.2697300Z         }
2026-06-04T12:53:14.2697709Z       }
2026-06-04T12:53:14.2698124Z     },
2026-06-04T12:53:14.2698537Z     {
2026-06-04T12:53:14.2699150Z       "id": "REQ-HAZARD-DROP-FILE-SINGLE-WRITER",
2026-06-04T12:53:14.2700058Z       "title": "Drop files are daemon-owned single-writer (6.4)",
2026-06-04T12:53:14.2700531Z       "requiredStages": [
2026-06-04T12:53:14.2700953Z         "impl",
2026-06-04T12:53:14.2701368Z         "unit"
2026-06-04T12:53:14.2701783Z       ],
2026-06-04T12:53:14.2702213Z       "stages": {
2026-06-04T12:53:14.2702630Z         "doc": {
2026-06-04T12:53:14.2703106Z           "complete": false,
2026-06-04T12:53:14.2703555Z           "evidence": []
2026-06-04T12:53:14.2704227Z         },
2026-06-04T12:53:14.2704658Z         "impl": {
2026-06-04T12:53:14.2705136Z           "complete": true,
2026-06-04T12:53:14.2705757Z           "evidence": [
2026-06-04T12:53:14.2706175Z             {
2026-06-04T12:53:14.2706758Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:53:14.2707201Z               "line": 25
2026-06-04T12:53:14.2707630Z             },
2026-06-04T12:53:14.2708048Z             {
2026-06-04T12:53:14.2708653Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:53:14.2709105Z               "line": 26
2026-06-04T12:53:14.2709586Z             },
2026-06-04T12:53:14.2710013Z             {
2026-06-04T12:53:14.2710604Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:53:14.2711057Z               "line": 153
2026-06-04T12:53:14.2711469Z             }
2026-06-04T12:53:14.2711885Z           ]
2026-06-04T12:53:14.2712306Z         },
2026-06-04T12:53:14.2712722Z         "int": {
2026-06-04T12:53:14.2713208Z           "complete": false,
2026-06-04T12:53:14.2713651Z           "evidence": []
2026-06-04T12:53:14.2714069Z         },
2026-06-04T12:53:14.2714497Z         "unit": {
2026-06-04T12:53:14.2715027Z           "complete": true,
2026-06-04T12:53:14.2715474Z           "evidence": [
2026-06-04T12:53:14.2715885Z             {
2026-06-04T12:53:14.2716461Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:53:14.2716897Z               "line": 180
2026-06-04T12:53:14.2717316Z             },
2026-06-04T12:53:14.2717729Z             {
2026-06-04T12:53:14.2718310Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:53:14.2718773Z               "line": 205
2026-06-04T12:53:14.2719221Z             },
2026-06-04T12:53:14.2719640Z             {
2026-06-04T12:53:14.2720231Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:53:14.2720681Z               "line": 180
2026-06-04T12:53:14.2721099Z             }
2026-06-04T12:53:14.2721515Z           ]
2026-06-04T12:53:14.2721944Z         }
2026-06-04T12:53:14.2722354Z       }
2026-06-04T12:53:14.2722772Z     },
2026-06-04T12:53:14.2723177Z     {
2026-06-04T12:53:14.2723719Z       "id": "REQ-HAZARD-EBUSY-RENAME",
2026-06-04T12:53:14.2724635Z       "title": "tmp-write + atomic-rename + retry on Windows EBUSY (5.2)",
2026-06-04T12:53:14.2725114Z       "requiredStages": [
2026-06-04T12:53:14.2725542Z         "impl",
2026-06-04T12:53:14.2725959Z         "unit"
2026-06-04T12:53:14.2726378Z       ],
2026-06-04T12:53:14.2726799Z       "stages": {
2026-06-04T12:53:14.2727223Z         "doc": {
2026-06-04T12:53:14.2727678Z           "complete": false,
2026-06-04T12:53:14.2728129Z           "evidence": []
2026-06-04T12:53:14.2728552Z         },
2026-06-04T12:53:14.2728971Z         "impl": {
2026-06-04T12:53:14.2729471Z           "complete": true,
2026-06-04T12:53:14.2729918Z           "evidence": [
2026-06-04T12:53:14.2730336Z             {
2026-06-04T12:53:14.2730934Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:53:14.2731390Z               "line": 48
2026-06-04T12:53:14.2731816Z             },
2026-06-04T12:53:14.2732229Z             {
2026-06-04T12:53:14.2732847Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:53:14.2733283Z               "line": 55
2026-06-04T12:53:14.2733701Z             },
2026-06-04T12:53:14.2734112Z             {
2026-06-04T12:53:14.2734797Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:53:14.2735242Z               "line": 74
2026-06-04T12:53:14.2735652Z             },
2026-06-04T12:53:14.2736067Z             {
2026-06-04T12:53:14.2736664Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:53:14.2737109Z               "line": 91
2026-06-04T12:53:14.2737532Z             }
2026-06-04T12:53:14.2737940Z           ]
2026-06-04T12:53:14.2738355Z         },
2026-06-04T12:53:14.2738766Z         "int": {
2026-06-04T12:53:14.2739270Z           "complete": false,
2026-06-04T12:53:14.2739720Z           "evidence": []
2026-06-04T12:53:14.2740309Z         },
2026-06-04T12:53:14.2740735Z         "unit": {
2026-06-04T12:53:14.2741207Z           "complete": true,
2026-06-04T12:53:14.2741828Z           "evidence": [
2026-06-04T12:53:14.2742243Z             {
2026-06-04T12:53:14.2742861Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:53:14.2743304Z               "line": 149
2026-06-04T12:53:14.2743732Z             },
2026-06-04T12:53:14.2744152Z             {
2026-06-04T12:53:14.2744746Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:53:14.2745192Z               "line": 163
2026-06-04T12:53:14.2745618Z             },
2026-06-04T12:53:14.2746109Z             {
2026-06-04T12:53:14.2746703Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:53:14.2747148Z               "line": 173
2026-06-04T12:53:14.2747572Z             },
2026-06-04T12:53:14.2747983Z             {
2026-06-04T12:53:14.2748592Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:53:14.2749038Z               "line": 191
2026-06-04T12:53:14.2749524Z             },
2026-06-04T12:53:14.2749939Z             {
2026-06-04T12:53:14.2750544Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:53:14.2751011Z               "line": 204
2026-06-04T12:53:14.2751416Z             }
2026-06-04T12:53:14.2751831Z           ]
2026-06-04T12:53:14.2752237Z         }
2026-06-04T12:53:14.2752650Z       }
2026-06-04T12:53:14.2753056Z     },
2026-06-04T12:53:14.2753469Z     {
2026-06-04T12:53:14.2754091Z       "id": "REQ-HAZARD-ECHO-BEFORE-SIGNOFF",
2026-06-04T12:53:14.2755140Z       "title": "Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3)",
2026-06-04T12:53:14.2755614Z       "requiredStages": [
2026-06-04T12:53:14.2756034Z         "impl",
2026-06-04T12:53:14.2756462Z         "unit"
2026-06-04T12:53:14.2756867Z       ],
2026-06-04T12:53:14.2757293Z       "stages": {
2026-06-04T12:53:14.2757715Z         "doc": {
2026-06-04T12:53:14.2758173Z           "complete": false,
2026-06-04T12:53:14.2758626Z           "evidence": []
2026-06-04T12:53:14.2759050Z         },
2026-06-04T12:53:14.2759522Z         "impl": {
2026-06-04T12:53:14.2759996Z           "complete": true,
2026-06-04T12:53:14.2760450Z           "evidence": [
2026-06-04T12:53:14.2760872Z             {
2026-06-04T12:53:14.2761512Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2761960Z               "line": 341
2026-06-04T12:53:14.2762374Z             },
2026-06-04T12:53:14.2762795Z             {
2026-06-04T12:53:14.2763392Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:53:14.2763839Z               "line": 26
2026-06-04T12:53:14.2764263Z             }
2026-06-04T12:53:14.2764674Z           ]
2026-06-04T12:53:14.2765093Z         },
2026-06-04T12:53:14.2765508Z         "int": {
2026-06-04T12:53:14.2765974Z           "complete": false,
2026-06-04T12:53:14.2766418Z           "evidence": []
2026-06-04T12:53:14.2766837Z         },
2026-06-04T12:53:14.2767265Z         "unit": {
2026-06-04T12:53:14.2767734Z           "complete": true,
2026-06-04T12:53:14.2768183Z           "evidence": [
2026-06-04T12:53:14.2768630Z             {
2026-06-04T12:53:14.2772414Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:53:14.2772960Z               "line": 139
2026-06-04T12:53:14.2773391Z             },
2026-06-04T12:53:14.2773811Z             {
2026-06-04T12:53:14.2774431Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:53:14.2774883Z               "line": 182
2026-06-04T12:53:14.2775295Z             }
2026-06-04T12:53:14.2775719Z           ]
2026-06-04T12:53:14.2776130Z         }
2026-06-04T12:53:14.2776540Z       }
2026-06-04T12:53:14.2776953Z     },
2026-06-04T12:53:14.2777353Z     {
2026-06-04T12:53:14.2777971Z       "id": "REQ-HAZARD-ENVELOPE-DECODE-ORDER",
2026-06-04T12:53:14.2778813Z       "title": "Envelope decode order, ampersand decoded last (4.1)",
2026-06-04T12:53:14.2779388Z       "requiredStages": [
2026-06-04T12:53:14.2779820Z         "impl",
2026-06-04T12:53:14.2780504Z         "unit"
2026-06-04T12:53:14.2780927Z       ],
2026-06-04T12:53:14.2781349Z       "stages": {
2026-06-04T12:53:14.2781926Z         "doc": {
2026-06-04T12:53:14.2782391Z           "complete": false,
2026-06-04T12:53:14.2782844Z           "evidence": []
2026-06-04T12:53:14.2783260Z         },
2026-06-04T12:53:14.2783694Z         "impl": {
2026-06-04T12:53:14.2784164Z           "complete": true,
2026-06-04T12:53:14.2784607Z           "evidence": [
2026-06-04T12:53:14.2785035Z             {
2026-06-04T12:53:14.2785693Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:53:14.2786148Z               "line": 36
2026-06-04T12:53:14.2786565Z             },
2026-06-04T12:53:14.2786985Z             {
2026-06-04T12:53:14.2787629Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:53:14.2788071Z               "line": 68
2026-06-04T12:53:14.2788498Z             }
2026-06-04T12:53:14.2788960Z           ]
2026-06-04T12:53:14.2789469Z         },
2026-06-04T12:53:14.2789924Z         "int": {
2026-06-04T12:53:14.2790405Z           "complete": false,
2026-06-04T12:53:14.2790861Z           "evidence": []
2026-06-04T12:53:14.2791328Z         },
2026-06-04T12:53:14.2792140Z         "unit": {
2026-06-04T12:53:14.2792845Z           "complete": true,
2026-06-04T12:53:14.2793450Z           "evidence": [
2026-06-04T12:53:14.2794007Z             {
2026-06-04T12:53:14.2794878Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:53:14.2795483Z               "line": 143
2026-06-04T12:53:14.2795976Z             },
2026-06-04T12:53:14.2796471Z             {
2026-06-04T12:53:14.2797183Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:53:14.2797698Z               "line": 160
2026-06-04T12:53:14.2798160Z             },
2026-06-04T12:53:14.2798627Z             {
2026-06-04T12:53:14.2799374Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:53:14.2799996Z               "line": 168
2026-06-04T12:53:14.2800431Z             }
2026-06-04T12:53:14.2800876Z           ]
2026-06-04T12:53:14.2801297Z         }
2026-06-04T12:53:14.2801712Z       }
2026-06-04T12:53:14.2802150Z     },
2026-06-04T12:53:14.2802577Z     {
2026-06-04T12:53:14.2803215Z       "id": "REQ-HAZARD-ENVELOPE-PARSER-SAFE",
2026-06-04T12:53:14.2804197Z       "title": "Two-slice envelope parser is panic-free and tolerant (4.2)",
2026-06-04T12:53:14.2804757Z       "requiredStages": [
2026-06-04T12:53:14.2805194Z         "impl",
2026-06-04T12:53:14.2805615Z         "unit"
2026-06-04T12:53:14.2806042Z       ],
2026-06-04T12:53:14.2806569Z       "stages": {
2026-06-04T12:53:14.2806986Z         "doc": {
2026-06-04T12:53:14.2807458Z           "complete": false,
2026-06-04T12:53:14.2807907Z           "evidence": []
2026-06-04T12:53:14.2808326Z         },
2026-06-04T12:53:14.2808750Z         "impl": {
2026-06-04T12:53:14.2809249Z           "complete": true,
2026-06-04T12:53:14.2809706Z           "evidence": [
2026-06-04T12:53:14.2810118Z             {
2026-06-04T12:53:14.2810776Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:53:14.2811266Z               "line": 107
2026-06-04T12:53:14.2811910Z             }
2026-06-04T12:53:14.2812397Z           ]
2026-06-04T12:53:14.2812874Z         },
2026-06-04T12:53:14.2813479Z         "int": {
2026-06-04T12:53:14.2813952Z           "complete": false,
2026-06-04T12:53:14.2814412Z           "evidence": []
2026-06-04T12:53:14.2814827Z         },
2026-06-04T12:53:14.2815257Z         "unit": {
2026-06-04T12:53:14.2815716Z           "complete": true,
2026-06-04T12:53:14.2816166Z           "evidence": [
2026-06-04T12:53:14.2816587Z             {
2026-06-04T12:53:14.2817226Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:53:14.2817680Z               "line": 184
2026-06-04T12:53:14.2818097Z             },
2026-06-04T12:53:14.2818516Z             {
2026-06-04T12:53:14.2819143Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:53:14.2819835Z               "line": 193
2026-06-04T12:53:14.2820763Z             },
2026-06-04T12:53:14.2821181Z             {
2026-06-04T12:53:14.2821831Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:53:14.2822431Z               "line": 201
2026-06-04T12:53:14.2822867Z             },
2026-06-04T12:53:14.2823283Z             {
2026-06-04T12:53:14.2823942Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:53:14.2824405Z               "line": 210
2026-06-04T12:53:14.2824824Z             },
2026-06-04T12:53:14.2825249Z             {
2026-06-04T12:53:14.2825888Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T12:53:14.2826345Z               "line": 219
2026-06-04T12:53:14.2826763Z             }
2026-06-04T12:53:14.2827189Z           ]
2026-06-04T12:53:14.2827609Z         }
2026-06-04T12:53:14.2828020Z       }
2026-06-04T12:53:14.2828444Z     },
2026-06-04T12:53:14.2828849Z     {
2026-06-04T12:53:14.2829500Z       "id": "REQ-HAZARD-EPHEMERAL-CLEANUP",
2026-06-04T12:53:14.2830391Z       "title": "Ephemeral perch cleanup on every ring exit path (3.1)",
2026-06-04T12:53:14.2830897Z       "requiredStages": [
2026-06-04T12:53:14.2831329Z         "impl",
2026-06-04T12:53:14.2831763Z         "unit"
2026-06-04T12:53:14.2832189Z       ],
2026-06-04T12:53:14.2832618Z       "stages": {
2026-06-04T12:53:14.2833053Z         "doc": {
2026-06-04T12:53:14.2833514Z           "complete": false,
2026-06-04T12:53:14.2833970Z           "evidence": []
2026-06-04T12:53:14.2834390Z         },
2026-06-04T12:53:14.2834819Z         "impl": {
2026-06-04T12:53:14.2835282Z           "complete": true,
2026-06-04T12:53:14.2835728Z           "evidence": [
2026-06-04T12:53:14.2836155Z             {
2026-06-04T12:53:14.2836725Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:53:14.2837186Z               "line": 14
2026-06-04T12:53:14.2837614Z             },
2026-06-04T12:53:14.2838032Z             {
2026-06-04T12:53:14.2838605Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:53:14.2839049Z               "line": 62
2026-06-04T12:53:14.2839535Z             }
2026-06-04T12:53:14.2839961Z           ]
2026-06-04T12:53:14.2840383Z         },
2026-06-04T12:53:14.2840828Z         "int": {
2026-06-04T12:53:14.2841296Z           "complete": false,
2026-06-04T12:53:14.2841755Z           "evidence": []
2026-06-04T12:53:14.2842172Z         },
2026-06-04T12:53:14.2842605Z         "unit": {
2026-06-04T12:53:14.2843061Z           "complete": true,
2026-06-04T12:53:14.2843518Z           "evidence": [
2026-06-04T12:53:14.2843944Z             {
2026-06-04T12:53:14.2844510Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:53:14.2844965Z               "line": 160
2026-06-04T12:53:14.2845386Z             },
2026-06-04T12:53:14.2845816Z             {
2026-06-04T12:53:14.2846382Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:53:14.2846841Z               "line": 197
2026-06-04T12:53:14.2847265Z             },
2026-06-04T12:53:14.2847680Z             {
2026-06-04T12:53:14.2848250Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:53:14.2848707Z               "line": 213
2026-06-04T12:53:14.2849132Z             }
2026-06-04T12:53:14.2849598Z           ]
2026-06-04T12:53:14.2850024Z         }
2026-06-04T12:53:14.2850450Z       }
2026-06-04T12:53:14.2850858Z     },
2026-06-04T12:53:14.2851280Z     {
2026-06-04T12:53:14.2851884Z       "id": "REQ-HAZARD-EVENTPART-REASSEMBLY",
2026-06-04T12:53:14.2853123Z       "title": "EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently",
2026-06-04T12:53:14.2858187Z       "requiredStages": [
2026-06-04T12:53:14.2858806Z         "impl",
2026-06-04T12:53:14.2859359Z         "unit"
2026-06-04T12:53:14.2859794Z       ],
2026-06-04T12:53:14.2860244Z       "stages": {
2026-06-04T12:53:14.2860674Z         "doc": {
2026-06-04T12:53:14.2861155Z           "complete": false,
2026-06-04T12:53:14.2861608Z           "evidence": []
2026-06-04T12:53:14.2862038Z         },
2026-06-04T12:53:14.2862479Z         "impl": {
2026-06-04T12:53:14.2862951Z           "complete": true,
2026-06-04T12:53:14.2863720Z           "evidence": [
2026-06-04T12:53:14.2864138Z             {
2026-06-04T12:53:14.2864910Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:53:14.2865355Z               "line": 76
2026-06-04T12:53:14.2865787Z             },
2026-06-04T12:53:14.2866222Z             {
2026-06-04T12:53:14.2866818Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:53:14.2867285Z               "line": 163
2026-06-04T12:53:14.2867709Z             },
2026-06-04T12:53:14.2868137Z             {
2026-06-04T12:53:14.2868737Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:53:14.2869248Z               "line": 229
2026-06-04T12:53:14.2869689Z             },
2026-06-04T12:53:14.2870103Z             {
2026-06-04T12:53:14.2870724Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:53:14.2871651Z               "line": 265
2026-06-04T12:53:14.2872147Z             }
2026-06-04T12:53:14.2873478Z           ]
2026-06-04T12:53:14.2874574Z         },
2026-06-04T12:53:14.2875627Z         "int": {
2026-06-04T12:53:14.2876822Z           "complete": false,
2026-06-04T12:53:14.2878199Z           "evidence": []
2026-06-04T12:53:14.2879707Z         },
2026-06-04T12:53:14.2881147Z         "unit": {
2026-06-04T12:53:14.2882529Z           "complete": true,
2026-06-04T12:53:14.2883843Z           "evidence": [
2026-06-04T12:53:14.2885181Z             {
2026-06-04T12:53:14.2886440Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:53:14.2888208Z               "line": 310
2026-06-04T12:53:14.2889675Z             },
2026-06-04T12:53:14.2890715Z             {
2026-06-04T12:53:14.2892219Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:53:14.2893871Z               "line": 318
2026-06-04T12:53:14.2895161Z             },
2026-06-04T12:53:14.2896328Z             {
2026-06-04T12:53:14.2897568Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:53:14.2899242Z               "line": 341
2026-06-04T12:53:14.2900502Z             },
2026-06-04T12:53:14.2901742Z             {
2026-06-04T12:53:14.2903002Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:53:14.2904759Z               "line": 378
2026-06-04T12:53:14.2905988Z             },
2026-06-04T12:53:14.2907041Z             {
2026-06-04T12:53:14.2908251Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:53:14.2910320Z               "line": 389
2026-06-04T12:53:14.2911459Z             },
2026-06-04T12:53:14.2912460Z             {
2026-06-04T12:53:14.2913635Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:53:14.2915138Z               "line": 401
2026-06-04T12:53:14.2916280Z             },
2026-06-04T12:53:14.2917287Z             {
2026-06-04T12:53:14.2918461Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T12:53:14.2920310Z               "line": 413
2026-06-04T12:53:14.2921445Z             }
2026-06-04T12:53:14.2922438Z           ]
2026-06-04T12:53:14.2923402Z         }
2026-06-04T12:53:14.2924364Z       }
2026-06-04T12:53:14.2925291Z     },
2026-06-04T12:53:14.2926232Z     {
2026-06-04T12:53:14.2927300Z       "id": "REQ-HAZARD-GEN-START-NOW",
2026-06-04T12:53:14.2929018Z       "title": "gen_start = now() on cold-start and handoff (2.4)",
2026-06-04T12:53:14.2930827Z       "requiredStages": [
2026-06-04T12:53:14.2932001Z         "impl",
2026-06-04T12:53:14.2933016Z         "int"
2026-06-04T12:53:14.2934012Z       ],
2026-06-04T12:53:14.2934966Z       "stages": {
2026-06-04T12:53:14.2935999Z         "doc": {
2026-06-04T12:53:14.2937079Z           "complete": false,
2026-06-04T12:53:14.2938307Z           "evidence": []
2026-06-04T12:53:14.2939475Z         },
2026-06-04T12:53:14.2940444Z         "impl": {
2026-06-04T12:53:14.2941527Z           "complete": true,
2026-06-04T12:53:14.2942722Z           "evidence": [
2026-06-04T12:53:14.2943821Z             {
2026-06-04T12:53:14.2944998Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:53:14.2946509Z               "line": 22
2026-06-04T12:53:14.2953783Z             }
2026-06-04T12:53:14.2954989Z           ]
2026-06-04T12:53:14.2955952Z         },
2026-06-04T12:53:14.2957263Z         "int": {
2026-06-04T12:53:14.2958328Z           "complete": true,
2026-06-04T12:53:14.2959606Z           "evidence": [
2026-06-04T12:53:14.2960720Z             {
2026-06-04T12:53:14.2961941Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-04T12:53:14.2963501Z               "line": 18
2026-06-04T12:53:14.2964615Z             }
2026-06-04T12:53:14.2965591Z           ]
2026-06-04T12:53:14.2966543Z         },
2026-06-04T12:53:14.2967510Z         "unit": {
2026-06-04T12:53:14.2968585Z           "complete": false,
2026-06-04T12:53:14.2969849Z           "evidence": []
2026-06-04T12:53:14.2970967Z         }
2026-06-04T12:53:14.2971917Z       }
2026-06-04T12:53:14.2972853Z     },
2026-06-04T12:53:14.2973783Z     {
2026-06-04T12:53:14.2974872Z       "id": "REQ-HAZARD-GRACE-BEFORE-SIGNOFF",
2026-06-04T12:53:14.2976934Z       "title": "Grace-period wait completes before composing INIT_SIGNOFF (1.1)",
2026-06-04T12:53:14.2978944Z       "requiredStages": [
2026-06-04T12:53:14.2980140Z         "impl",
2026-06-04T12:53:14.2981153Z         "unit"
2026-06-04T12:53:14.2982147Z       ],
2026-06-04T12:53:14.2983099Z       "stages": {
2026-06-04T12:53:14.2984129Z         "doc": {
2026-06-04T12:53:14.2985195Z           "complete": false,
2026-06-04T12:53:14.2986401Z           "evidence": []
2026-06-04T12:53:14.2987516Z         },
2026-06-04T12:53:14.2988473Z         "impl": {
2026-06-04T12:53:14.2989579Z           "complete": true,
2026-06-04T12:53:14.2990777Z           "evidence": [
2026-06-04T12:53:14.2991859Z             {
2026-06-04T12:53:14.2993073Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.2994634Z               "line": 340
2026-06-04T12:53:14.2995753Z             },
2026-06-04T12:53:14.2996730Z             {
2026-06-04T12:53:14.2997891Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:53:14.2999437Z               "line": 27
2026-06-04T12:53:14.3000552Z             }
2026-06-04T12:53:14.3001533Z           ]
2026-06-04T12:53:14.3002496Z         },
2026-06-04T12:53:14.3003436Z         "int": {
2026-06-04T12:53:14.3004488Z           "complete": false,
2026-06-04T12:53:14.3005692Z           "evidence": []
2026-06-04T12:53:14.3006812Z         },
2026-06-04T12:53:14.3007759Z         "unit": {
2026-06-04T12:53:14.3008808Z           "complete": true,
2026-06-04T12:53:14.3010027Z           "evidence": [
2026-06-04T12:53:14.3011108Z             {
2026-06-04T12:53:14.3012310Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.3013864Z               "line": 745
2026-06-04T12:53:14.3014983Z             },
2026-06-04T12:53:14.3015962Z             {
2026-06-04T12:53:14.3017132Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:53:14.3018634Z               "line": 164
2026-06-04T12:53:14.3019781Z             }
2026-06-04T12:53:14.3020774Z           ]
2026-06-04T12:53:14.3021738Z         }
2026-06-04T12:53:14.3022669Z       }
2026-06-04T12:53:14.3023585Z     },
2026-06-04T12:53:14.3024517Z     {
2026-06-04T12:53:14.3025672Z       "id": "REQ-HAZARD-HANDOFF-ARGV-COMPAT",
2026-06-04T12:53:14.3027550Z       "title": "Broker/brain IPC + handoff argv version-tolerant (2.3)",
2026-06-04T12:53:14.3029431Z       "requiredStages": [
2026-06-04T12:53:14.3030590Z         "impl",
2026-06-04T12:53:14.3031585Z         "unit"
2026-06-04T12:53:14.3032565Z       ],
2026-06-04T12:53:14.3033512Z       "stages": {
2026-06-04T12:53:14.3034546Z         "doc": {
2026-06-04T12:53:14.3035616Z           "complete": false,
2026-06-04T12:53:14.3036832Z           "evidence": []
2026-06-04T12:53:14.3037943Z         },
2026-06-04T12:53:14.3038907Z         "impl": {
2026-06-04T12:53:14.3040029Z           "complete": true,
2026-06-04T12:53:14.3041213Z           "evidence": [
2026-06-04T12:53:14.3042296Z             {
2026-06-04T12:53:14.3043456Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:53:14.3045224Z               "line": 20
2026-06-04T12:53:14.3046337Z             },
2026-06-04T12:53:14.3047474Z             {
2026-06-04T12:53:14.3052850Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:53:14.3054475Z               "line": 94
2026-06-04T12:53:14.3055580Z             },
2026-06-04T12:53:14.3056564Z             {
2026-06-04T12:53:14.3057758Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T12:53:14.3059361Z               "line": 70
2026-06-04T12:53:14.3060465Z             },
2026-06-04T12:53:14.3061445Z             {
2026-06-04T12:53:14.3062639Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T12:53:14.3064182Z               "line": 82
2026-06-04T12:53:14.3065275Z             }
2026-06-04T12:53:14.3066252Z           ]
2026-06-04T12:53:14.3067200Z         },
2026-06-04T12:53:14.3068153Z         "int": {
2026-06-04T12:53:14.3069232Z           "complete": false,
2026-06-04T12:53:14.3070438Z           "evidence": []
2026-06-04T12:53:14.3071572Z         },
2026-06-04T12:53:14.3072527Z         "unit": {
2026-06-04T12:53:14.3073600Z           "complete": true,
2026-06-04T12:53:14.3074865Z           "evidence": [
2026-06-04T12:53:14.3075949Z             {
2026-06-04T12:53:14.3077127Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:53:14.3078617Z               "line": 139
2026-06-04T12:53:14.3079769Z             },
2026-06-04T12:53:14.3080747Z             {
2026-06-04T12:53:14.3081905Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:53:14.3083396Z               "line": 162
2026-06-04T12:53:14.3084524Z             },
2026-06-04T12:53:14.3085541Z             {
2026-06-04T12:53:14.3086700Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:53:14.3088189Z               "line": 173
2026-06-04T12:53:14.3089322Z             },
2026-06-04T12:53:14.3090360Z             {
2026-06-04T12:53:14.3091560Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:53:14.3093081Z               "line": 189
2026-06-04T12:53:14.3094273Z             },
2026-06-04T12:53:14.3095249Z             {
2026-06-04T12:53:14.3096415Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T12:53:14.3097926Z               "line": 200
2026-06-04T12:53:14.3099048Z             },
2026-06-04T12:53:14.3100082Z             {
2026-06-04T12:53:14.3101291Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T12:53:14.3102853Z               "line": 139
2026-06-04T12:53:14.3103971Z             }
2026-06-04T12:53:14.3104945Z           ]
2026-06-04T12:53:14.3105896Z         }
2026-06-04T12:53:14.3106831Z       }
2026-06-04T12:53:14.3107758Z     },
2026-06-04T12:53:14.3108686Z     {
2026-06-04T12:53:14.3109738Z       "id": "REQ-HAZARD-ID-CHARSET",
2026-06-04T12:53:14.3112065Z       "title": "Addressable-id charset reserves :/@ delimiters; validated at every creation seam (4.6)",
2026-06-04T12:53:14.3114601Z       "requiredStages": [
2026-06-04T12:53:14.3115765Z         "impl",
2026-06-04T12:53:14.3116792Z         "unit"
2026-06-04T12:53:14.3117772Z       ],
2026-06-04T12:53:14.3118714Z       "stages": {
2026-06-04T12:53:14.3119790Z         "doc": {
2026-06-04T12:53:14.3120830Z           "complete": true,
2026-06-04T12:53:14.3122002Z           "evidence": [
2026-06-04T12:53:14.3123085Z             {
2026-06-04T12:53:14.3124213Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T12:53:14.3125652Z               "line": 131
2026-06-04T12:53:14.3126760Z             }
2026-06-04T12:53:14.3127731Z           ]
2026-06-04T12:53:14.3128675Z         },
2026-06-04T12:53:14.3129667Z         "impl": {
2026-06-04T12:53:14.3130728Z           "complete": true,
2026-06-04T12:53:14.3131911Z           "evidence": [
2026-06-04T12:53:14.3132993Z             {
2026-06-04T12:53:14.3134134Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:53:14.3135592Z               "line": 50
2026-06-04T12:53:14.3136697Z             },
2026-06-04T12:53:14.3137682Z             {
2026-06-04T12:53:14.3139094Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:53:14.3140607Z               "line": 17
2026-06-04T12:53:14.3141862Z             },
2026-06-04T12:53:14.3142863Z             {
2026-06-04T12:53:14.3144027Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.3145529Z               "line": 171
2026-06-04T12:53:14.3146651Z             },
2026-06-04T12:53:14.3147636Z             {
2026-06-04T12:53:14.3148785Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.3154221Z               "line": 265
2026-06-04T12:53:14.3155423Z             },
2026-06-04T12:53:14.3156414Z             {
2026-06-04T12:53:14.3157557Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T12:53:14.3159035Z               "line": 32
2026-06-04T12:53:14.3160239Z             }
2026-06-04T12:53:14.3161233Z           ]
2026-06-04T12:53:14.3162188Z         },
2026-06-04T12:53:14.3163146Z         "int": {
2026-06-04T12:53:14.3164211Z           "complete": false,
2026-06-04T12:53:14.3165459Z           "evidence": []
2026-06-04T12:53:14.3166622Z         },
2026-06-04T12:53:14.3167582Z         "unit": {
2026-06-04T12:53:14.3168664Z           "complete": true,
2026-06-04T12:53:14.3169885Z           "evidence": [
2026-06-04T12:53:14.3170971Z             {
2026-06-04T12:53:14.3172091Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:53:14.3173556Z               "line": 94
2026-06-04T12:53:14.3174658Z             },
2026-06-04T12:53:14.3175659Z             {
2026-06-04T12:53:14.3176787Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:53:14.3178255Z               "line": 111
2026-06-04T12:53:14.3179404Z             },
2026-06-04T12:53:14.3180392Z             {
2026-06-04T12:53:14.3181508Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:53:14.3182977Z               "line": 124
2026-06-04T12:53:14.3184091Z             },
2026-06-04T12:53:14.3185078Z             {
2026-06-04T12:53:14.3186194Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:53:14.3187673Z               "line": 134
2026-06-04T12:53:14.3188783Z             },
2026-06-04T12:53:14.3189812Z             {
2026-06-04T12:53:14.3190940Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:53:14.3192404Z               "line": 142
2026-06-04T12:53:14.3193516Z             },
2026-06-04T12:53:14.3194489Z             {
2026-06-04T12:53:14.3195612Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T12:53:14.3197073Z               "line": 154
2026-06-04T12:53:14.3198192Z             },
2026-06-04T12:53:14.3199205Z             {
2026-06-04T12:53:14.3200434Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.3202021Z               "line": 432
2026-06-04T12:53:14.3203139Z             }
2026-06-04T12:53:14.3204176Z           ]
2026-06-04T12:53:14.3205118Z         }
2026-06-04T12:53:14.3206055Z       }
2026-06-04T12:53:14.3206982Z     },
2026-06-04T12:53:14.3207901Z     {
2026-06-04T12:53:14.3208939Z       "id": "REQ-HAZARD-INBOX-NO-DOUBLE",
2026-06-04T12:53:14.3210676Z       "title": "No double-delivery via legacy inbox (4.5)",
2026-06-04T12:53:14.3212303Z       "requiredStages": [
2026-06-04T12:53:14.3213458Z         "impl",
2026-06-04T12:53:14.3214456Z         "unit"
2026-06-04T12:53:14.3215450Z       ],
2026-06-04T12:53:14.3216401Z       "stages": {
2026-06-04T12:53:14.3217436Z         "doc": {
2026-06-04T12:53:14.3218486Z           "complete": false,
2026-06-04T12:53:14.3219733Z           "evidence": []
2026-06-04T12:53:14.3220851Z         },
2026-06-04T12:53:14.3221810Z         "impl": {
2026-06-04T12:53:14.3222865Z           "complete": true,
2026-06-04T12:53:14.3224038Z           "evidence": [
2026-06-04T12:53:14.3225127Z             {
2026-06-04T12:53:14.3226282Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.3227788Z               "line": 128
2026-06-04T12:53:14.3228907Z             }
2026-06-04T12:53:14.3229921Z           ]
2026-06-04T12:53:14.3230870Z         },
2026-06-04T12:53:14.3232096Z         "int": {
2026-06-04T12:53:14.3233170Z           "complete": false,
2026-06-04T12:53:14.3234376Z           "evidence": []
2026-06-04T12:53:14.3235634Z         },
2026-06-04T12:53:14.3236598Z         "unit": {
2026-06-04T12:53:14.3237650Z           "complete": true,
2026-06-04T12:53:14.3238837Z           "evidence": [
2026-06-04T12:53:14.3240024Z             {
2026-06-04T12:53:14.3241206Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.3242706Z               "line": 205
2026-06-04T12:53:14.3243820Z             }
2026-06-04T12:53:14.3244799Z           ]
2026-06-04T12:53:14.3245750Z         }
2026-06-04T12:53:14.3250549Z       }
2026-06-04T12:53:14.3251626Z     },
2026-06-04T12:53:14.3252564Z     {
2026-06-04T12:53:14.3253656Z       "id": "REQ-HAZARD-INFO-JSON-TORN-READ",
2026-06-04T12:53:14.3255453Z       "title": "State-file reads tolerate concurrent writes (1.2)",
2026-06-04T12:53:14.3257177Z       "requiredStages": [
2026-06-04T12:53:14.3258309Z         "impl",
2026-06-04T12:53:14.3259392Z         "unit"
2026-06-04T12:53:14.3260380Z       ],
2026-06-04T12:53:14.3261339Z       "stages": {
2026-06-04T12:53:14.3262362Z         "doc": {
2026-06-04T12:53:14.3263409Z           "complete": false,
2026-06-04T12:53:14.3264613Z           "evidence": []
2026-06-04T12:53:14.3265717Z         },
2026-06-04T12:53:14.3266676Z         "impl": {
2026-06-04T12:53:14.3267721Z           "complete": true,
2026-06-04T12:53:14.3268893Z           "evidence": [
2026-06-04T12:53:14.3270012Z             {
2026-06-04T12:53:14.3271151Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.3272626Z               "line": 190
2026-06-04T12:53:14.3273732Z             },
2026-06-04T12:53:14.3274707Z             {
2026-06-04T12:53:14.3275848Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.3277304Z               "line": 201
2026-06-04T12:53:14.3278401Z             },
2026-06-04T12:53:14.3279405Z             {
2026-06-04T12:53:14.3280540Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.3282015Z               "line": 219
2026-06-04T12:53:14.3283119Z             }
2026-06-04T12:53:14.3284090Z           ]
2026-06-04T12:53:14.3285028Z         },
2026-06-04T12:53:14.3285964Z         "int": {
2026-06-04T12:53:14.3286996Z           "complete": false,
2026-06-04T12:53:14.3288189Z           "evidence": []
2026-06-04T12:53:14.3289349Z         },
2026-06-04T12:53:14.3290352Z         "unit": {
2026-06-04T12:53:14.3291422Z           "complete": true,
2026-06-04T12:53:14.3292589Z           "evidence": [
2026-06-04T12:53:14.3293659Z             {
2026-06-04T12:53:14.3294784Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.3296257Z               "line": 243
2026-06-04T12:53:14.3297367Z             },
2026-06-04T12:53:14.3298333Z             {
2026-06-04T12:53:14.3299507Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.3300981Z               "line": 261
2026-06-04T12:53:14.3302088Z             },
2026-06-04T12:53:14.3303079Z             {
2026-06-04T12:53:14.3304218Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.3305694Z               "line": 398
2026-06-04T12:53:14.3306808Z             },
2026-06-04T12:53:14.3307779Z             {
2026-06-04T12:53:14.3308910Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.3310423Z               "line": 409
2026-06-04T12:53:14.3311528Z             },
2026-06-04T12:53:14.3312499Z             {
2026-06-04T12:53:14.3313639Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.3315103Z               "line": 422
2026-06-04T12:53:14.3316207Z             }
2026-06-04T12:53:14.3317170Z           ]
2026-06-04T12:53:14.3318111Z         }
2026-06-04T12:53:14.3319048Z       }
2026-06-04T12:53:14.3319989Z     },
2026-06-04T12:53:14.3320905Z     {
2026-06-04T12:53:14.3321924Z       "id": "REQ-HAZARD-LOCAL-API-AUTH",
2026-06-04T12:53:14.3324059Z       "title": "Every local `api` mutation authenticated to an endpoint/session (codex #13)",
2026-06-04T12:53:14.3326573Z       "requiredStages": [
2026-06-04T12:53:14.3327715Z         "impl",
2026-06-04T12:53:14.3328878Z         "unit"
2026-06-04T12:53:14.3329910Z       ],
2026-06-04T12:53:14.3330854Z       "stages": {
2026-06-04T12:53:14.3331869Z         "doc": {
2026-06-04T12:53:14.3332913Z           "complete": false,
2026-06-04T12:53:14.3334120Z           "evidence": []
2026-06-04T12:53:14.3335225Z         },
2026-06-04T12:53:14.3336182Z         "impl": {
2026-06-04T12:53:14.3337234Z           "complete": true,
2026-06-04T12:53:14.3338402Z           "evidence": [
2026-06-04T12:53:14.3339521Z             {
2026-06-04T12:53:14.3340639Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:53:14.3342081Z               "line": 14
2026-06-04T12:53:14.3343184Z             },
2026-06-04T12:53:14.3344176Z             {
2026-06-04T12:53:14.3349281Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T12:53:14.3350898Z               "line": 305
2026-06-04T12:53:14.3352033Z             }
2026-06-04T12:53:14.3353010Z           ]
2026-06-04T12:53:14.3353948Z         },
2026-06-04T12:53:14.3354899Z         "int": {
2026-06-04T12:53:14.3355942Z           "complete": false,
2026-06-04T12:53:14.3357147Z           "evidence": []
2026-06-04T12:53:14.3358250Z         },
2026-06-04T12:53:14.3359270Z         "unit": {
2026-06-04T12:53:14.3360402Z           "complete": true,
2026-06-04T12:53:14.3361664Z           "evidence": [
2026-06-04T12:53:14.3362763Z             {
2026-06-04T12:53:14.3363882Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:53:14.3365339Z               "line": 130
2026-06-04T12:53:14.3366443Z             },
2026-06-04T12:53:14.3367417Z             {
2026-06-04T12:53:14.3368535Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:53:14.3370079Z               "line": 138
2026-06-04T12:53:14.3371203Z             },
2026-06-04T12:53:14.3372184Z             {
2026-06-04T12:53:14.3373290Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:53:14.3374759Z               "line": 146
2026-06-04T12:53:14.3375874Z             },
2026-06-04T12:53:14.3376855Z             {
2026-06-04T12:53:14.3377970Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:53:14.3379509Z               "line": 154
2026-06-04T12:53:14.3380624Z             },
2026-06-04T12:53:14.3381595Z             {
2026-06-04T12:53:14.3382726Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:53:14.3384168Z               "line": 162
2026-06-04T12:53:14.3385271Z             },
2026-06-04T12:53:14.3386257Z             {
2026-06-04T12:53:14.3387378Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T12:53:14.3388818Z               "line": 170
2026-06-04T12:53:14.3389974Z             }
2026-06-04T12:53:14.3390941Z           ]
2026-06-04T12:53:14.3391882Z         }
2026-06-04T12:53:14.3392803Z       }
2026-06-04T12:53:14.3393722Z     },
2026-06-04T12:53:14.3394646Z     {
2026-06-04T12:53:14.3395694Z       "id": "REQ-HAZARD-PAIR-RATE-LIMIT",
2026-06-04T12:53:14.3402003Z       "title": "Subnet-global pairing rate limit: one active ceremony per subnet, shared attempt counter, exponential backoff — a public pre-trust relay + multiple seed-holders otherwise enables distributed SPAKE2 guessing (and ±1 TOTP window triples the valid-password space) (ADR-0005 #11)",
2026-06-04T12:53:14.3408047Z       "requiredStages": [
2026-06-04T12:53:14.3409455Z         "impl",
2026-06-04T12:53:14.3410651Z         "unit"
2026-06-04T12:53:14.3411644Z       ],
2026-06-04T12:53:14.3412589Z       "stages": {
2026-06-04T12:53:14.3413602Z         "doc": {
2026-06-04T12:53:14.3414669Z           "complete": false,
2026-06-04T12:53:14.3415928Z           "evidence": []
2026-06-04T12:53:14.3417050Z         },
2026-06-04T12:53:14.3418026Z         "impl": {
2026-06-04T12:53:14.3419085Z           "complete": true,
2026-06-04T12:53:14.3420645Z           "evidence": [
2026-06-04T12:53:14.3421733Z             {
2026-06-04T12:53:14.3423046Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:53:14.3425148Z               "line": 34
2026-06-04T12:53:14.3426325Z             }
2026-06-04T12:53:14.3427502Z           ]
2026-06-04T12:53:14.3428501Z         },
2026-06-04T12:53:14.3429806Z         "int": {
2026-06-04T12:53:14.3430868Z           "complete": false,
2026-06-04T12:53:14.3432086Z           "evidence": []
2026-06-04T12:53:14.3433203Z         },
2026-06-04T12:53:14.3434163Z         "unit": {
2026-06-04T12:53:14.3435285Z           "complete": true,
2026-06-04T12:53:14.3436459Z           "evidence": [
2026-06-04T12:53:14.3437548Z             {
2026-06-04T12:53:14.3438892Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:53:14.3440968Z               "line": 188
2026-06-04T12:53:14.3442085Z             },
2026-06-04T12:53:14.3443080Z             {
2026-06-04T12:53:14.3444391Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:53:14.3446068Z               "line": 200
2026-06-04T12:53:14.3447217Z             },
2026-06-04T12:53:14.3448207Z             {
2026-06-04T12:53:14.3449556Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:53:14.3451267Z               "line": 211
2026-06-04T12:53:14.3452388Z             },
2026-06-04T12:53:14.3453375Z             {
2026-06-04T12:53:14.3454688Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:53:14.3461293Z               "line": 245
2026-06-04T12:53:14.3462496Z             },
2026-06-04T12:53:14.3463495Z             {
2026-06-04T12:53:14.3464802Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:53:14.3466485Z               "line": 267
2026-06-04T12:53:14.3467598Z             },
2026-06-04T12:53:14.3468585Z             {
2026-06-04T12:53:14.3469965Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:53:14.3471628Z               "line": 288
2026-06-04T12:53:14.3472736Z             },
2026-06-04T12:53:14.3473750Z             {
2026-06-04T12:53:14.3475052Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T12:53:14.3476839Z               "line": 304
2026-06-04T12:53:14.3477944Z             }
2026-06-04T12:53:14.3478914Z           ]
2026-06-04T12:53:14.3479913Z         }
2026-06-04T12:53:14.3480852Z       }
2026-06-04T12:53:14.3481763Z     },
2026-06-04T12:53:14.3482683Z     {
2026-06-04T12:53:14.3483751Z       "id": "REQ-HAZARD-PAIR-SEED-ROTATION",
2026-06-04T12:53:14.3487991Z       "title": "Removing a node rotates the subnet seed (epoch bump) so an old node/old seed cannot rejoin; trust-store delete alone is NOT revocation because the seed is replicated to every trusted node (ADR-0005 #10)",
2026-06-04T12:53:14.3492206Z       "requiredStages": [
2026-06-04T12:53:14.3493353Z         "impl",
2026-06-04T12:53:14.3494351Z         "unit"
2026-06-04T12:53:14.3495432Z       ],
2026-06-04T12:53:14.3496372Z       "stages": {
2026-06-04T12:53:14.3497384Z         "doc": {
2026-06-04T12:53:14.3498444Z           "complete": false,
2026-06-04T12:53:14.3499701Z           "evidence": []
2026-06-04T12:53:14.3500817Z         },
2026-06-04T12:53:14.3501772Z         "impl": {
2026-06-04T12:53:14.3502827Z           "complete": true,
2026-06-04T12:53:14.3504006Z           "evidence": [
2026-06-04T12:53:14.3504434Z             {
2026-06-04T12:53:14.3505033Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3505481Z               "line": 29
2026-06-04T12:53:14.3505897Z             },
2026-06-04T12:53:14.3506321Z             {
2026-06-04T12:53:14.3506917Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3507380Z               "line": 154
2026-06-04T12:53:14.3507803Z             },
2026-06-04T12:53:14.3508213Z             {
2026-06-04T12:53:14.3508819Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3509305Z               "line": 173
2026-06-04T12:53:14.3509737Z             },
2026-06-04T12:53:14.3510147Z             {
2026-06-04T12:53:14.3511037Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3511488Z               "line": 200
2026-06-04T12:53:14.3512052Z             }
2026-06-04T12:53:14.3512480Z           ]
2026-06-04T12:53:14.3512893Z         },
2026-06-04T12:53:14.3513318Z         "int": {
2026-06-04T12:53:14.3513784Z           "complete": false,
2026-06-04T12:53:14.3514245Z           "evidence": []
2026-06-04T12:53:14.3514671Z         },
2026-06-04T12:53:14.3515097Z         "unit": {
2026-06-04T12:53:14.3515560Z           "complete": true,
2026-06-04T12:53:14.3515997Z           "evidence": [
2026-06-04T12:53:14.3516421Z             {
2026-06-04T12:53:14.3517020Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3517475Z               "line": 276
2026-06-04T12:53:14.3517899Z             },
2026-06-04T12:53:14.3518309Z             {
2026-06-04T12:53:14.3518916Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3519411Z               "line": 291
2026-06-04T12:53:14.3519858Z             },
2026-06-04T12:53:14.3520271Z             {
2026-06-04T12:53:14.3520881Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3521347Z               "line": 310
2026-06-04T12:53:14.3521766Z             },
2026-06-04T12:53:14.3522189Z             {
2026-06-04T12:53:14.3522787Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3523247Z               "line": 326
2026-06-04T12:53:14.3523665Z             },
2026-06-04T12:53:14.3524095Z             {
2026-06-04T12:53:14.3524699Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3525145Z               "line": 376
2026-06-04T12:53:14.3525570Z             },
2026-06-04T12:53:14.3525981Z             {
2026-06-04T12:53:14.3526593Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3527044Z               "line": 390
2026-06-04T12:53:14.3527461Z             },
2026-06-04T12:53:14.3527885Z             {
2026-06-04T12:53:14.3528488Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3528958Z               "line": 401
2026-06-04T12:53:14.3529418Z             },
2026-06-04T12:53:14.3529865Z             {
2026-06-04T12:53:14.3530472Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.3530918Z               "line": 412
2026-06-04T12:53:14.3531346Z             }
2026-06-04T12:53:14.3531760Z           ]
2026-06-04T12:53:14.3532178Z         }
2026-06-04T12:53:14.3532598Z       }
2026-06-04T12:53:14.3533013Z     },
2026-06-04T12:53:14.3533430Z     {
2026-06-04T12:53:14.3534024Z       "id": "REQ-HAZARD-PAIR-TRANSCRIPT-BIND",
2026-06-04T12:53:14.3537877Z       "title": "Pairing transcript binds roles, both node pubkeys, subnet ID, seed epoch, TOTP time-step, and confirmation MACs — or unknown-key-share/reflection/wrong-subnet/replay pairing remain possible (ADR-0005 #12)",
2026-06-04T12:53:14.3538372Z       "requiredStages": [
2026-06-04T12:53:14.3538810Z         "impl",
2026-06-04T12:53:14.3539286Z         "unit"
2026-06-04T12:53:14.3539753Z       ],
2026-06-04T12:53:14.3540220Z       "stages": {
2026-06-04T12:53:14.3540644Z         "doc": {
2026-06-04T12:53:14.3541143Z           "complete": false,
2026-06-04T12:53:14.3541592Z           "evidence": []
2026-06-04T12:53:14.3542015Z         },
2026-06-04T12:53:14.3542436Z         "impl": {
2026-06-04T12:53:14.3542902Z           "complete": true,
2026-06-04T12:53:14.3543358Z           "evidence": [
2026-06-04T12:53:14.3543782Z             {
2026-06-04T12:53:14.3544491Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.3544938Z               "line": 27
2026-06-04T12:53:14.3545446Z             },
2026-06-04T12:53:14.3545862Z             {
2026-06-04T12:53:14.3546557Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.3547010Z               "line": 110
2026-06-04T12:53:14.3547427Z             },
2026-06-04T12:53:14.3547853Z             {
2026-06-04T12:53:14.3548540Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.3549221Z               "line": 153
2026-06-04T12:53:14.3549646Z             },
2026-06-04T12:53:14.3550208Z             {
2026-06-04T12:53:14.3550909Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.3551357Z               "line": 182
2026-06-04T12:53:14.3551788Z             },
2026-06-04T12:53:14.3552204Z             {
2026-06-04T12:53:14.3552978Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:53:14.3553426Z               "line": 31
2026-06-04T12:53:14.3553845Z             },
2026-06-04T12:53:14.3554272Z             {
2026-06-04T12:53:14.3559001Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:53:14.3559659Z               "line": 113
2026-06-04T12:53:14.3560090Z             },
2026-06-04T12:53:14.3560511Z             {
2026-06-04T12:53:14.3561293Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:53:14.3561742Z               "line": 138
2026-06-04T12:53:14.3562190Z             }
2026-06-04T12:53:14.3562603Z           ]
2026-06-04T12:53:14.3563019Z         },
2026-06-04T12:53:14.3563451Z         "int": {
2026-06-04T12:53:14.3563920Z           "complete": false,
2026-06-04T12:53:14.3564380Z           "evidence": []
2026-06-04T12:53:14.3564796Z         },
2026-06-04T12:53:14.3565222Z         "unit": {
2026-06-04T12:53:14.3565675Z           "complete": true,
2026-06-04T12:53:14.3566123Z           "evidence": [
2026-06-04T12:53:14.3566540Z             {
2026-06-04T12:53:14.3567233Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.3567680Z               "line": 261
2026-06-04T12:53:14.3568098Z             },
2026-06-04T12:53:14.3568518Z             {
2026-06-04T12:53:14.3569242Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.3569694Z               "line": 276
2026-06-04T12:53:14.3570115Z             },
2026-06-04T12:53:14.3570543Z             {
2026-06-04T12:53:14.3571248Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.3571693Z               "line": 293
2026-06-04T12:53:14.3572121Z             },
2026-06-04T12:53:14.3572538Z             {
2026-06-04T12:53:14.3573229Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.3573674Z               "line": 310
2026-06-04T12:53:14.3574096Z             },
2026-06-04T12:53:14.3574513Z             {
2026-06-04T12:53:14.3575189Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.3575640Z               "line": 327
2026-06-04T12:53:14.3576053Z             },
2026-06-04T12:53:14.3576472Z             {
2026-06-04T12:53:14.3577154Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.3577605Z               "line": 366
2026-06-04T12:53:14.3578026Z             },
2026-06-04T12:53:14.3578439Z             {
2026-06-04T12:53:14.3579240Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:53:14.3579701Z               "line": 179
2026-06-04T12:53:14.3580128Z             },
2026-06-04T12:53:14.3580548Z             {
2026-06-04T12:53:14.3581313Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:53:14.3581758Z               "line": 194
2026-06-04T12:53:14.3582169Z             },
2026-06-04T12:53:14.3582584Z             {
2026-06-04T12:53:14.3583326Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:53:14.3583769Z               "line": 204
2026-06-04T12:53:14.3584188Z             },
2026-06-04T12:53:14.3584592Z             {
2026-06-04T12:53:14.3585348Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:53:14.3585789Z               "line": 259
2026-06-04T12:53:14.3586209Z             },
2026-06-04T12:53:14.3586620Z             {
2026-06-04T12:53:14.3587395Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:53:14.3587840Z               "line": 269
2026-06-04T12:53:14.3588564Z             },
2026-06-04T12:53:14.3588987Z             {
2026-06-04T12:53:14.3589799Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:53:14.3590398Z               "line": 283
2026-06-04T12:53:14.3590814Z             }
2026-06-04T12:53:14.3591231Z           ]
2026-06-04T12:53:14.3591649Z         }
2026-06-04T12:53:14.3592063Z       }
2026-06-04T12:53:14.3592476Z     },
2026-06-04T12:53:14.3592881Z     {
2026-06-04T12:53:14.3593435Z       "id": "REQ-HAZARD-PARENT-PID-PREFER",
2026-06-04T12:53:14.3594475Z       "title": "Prefer stable parent PID / broker handle over ephemeral PID (2.1)",
2026-06-04T12:53:14.3594962Z       "requiredStages": [],
2026-06-04T12:53:14.3595391Z       "stages": {
2026-06-04T12:53:14.3595804Z         "doc": {
2026-06-04T12:53:14.3596266Z           "complete": false,
2026-06-04T12:53:14.3596712Z           "evidence": []
2026-06-04T12:53:14.3597131Z         },
2026-06-04T12:53:14.3597545Z         "impl": {
2026-06-04T12:53:14.3598026Z           "complete": false,
2026-06-04T12:53:14.3598475Z           "evidence": []
2026-06-04T12:53:14.3598882Z         },
2026-06-04T12:53:14.3599375Z         "int": {
2026-06-04T12:53:14.3599834Z           "complete": false,
2026-06-04T12:53:14.3600283Z           "evidence": []
2026-06-04T12:53:14.3600691Z         },
2026-06-04T12:53:14.3601119Z         "unit": {
2026-06-04T12:53:14.3601577Z           "complete": false,
2026-06-04T12:53:14.3602016Z           "evidence": []
2026-06-04T12:53:14.3602433Z         }
2026-06-04T12:53:14.3602842Z       }
2026-06-04T12:53:14.3603251Z     },
2026-06-04T12:53:14.3603649Z     {
2026-06-04T12:53:14.3604279Z       "id": "REQ-HAZARD-PSYCHE-OUTBOUND-PROXY",
2026-06-04T12:53:14.3615395Z       "title": "Psyche outbound captured + sanitized: the live-Psyche turn driver captures stdout (never Stdio::null), and the daemon strips/re-stamps Psyche-supplied from=/target and constrains routing (reply→__REPLY_TO__ sender, notify→own user/subnet) (7.3)",
2026-06-04T12:53:14.3616081Z       "requiredStages": [
2026-06-04T12:53:14.3616629Z         "impl",
2026-06-04T12:53:14.3617050Z         "unit"
2026-06-04T12:53:14.3617507Z       ],
2026-06-04T12:53:14.3617946Z       "stages": {
2026-06-04T12:53:14.3618376Z         "doc": {
2026-06-04T12:53:14.3618844Z           "complete": false,
2026-06-04T12:53:14.3619352Z           "evidence": []
2026-06-04T12:53:14.3619779Z         },
2026-06-04T12:53:14.3620202Z         "impl": {
2026-06-04T12:53:14.3620669Z           "complete": true,
2026-06-04T12:53:14.3621114Z           "evidence": [
2026-06-04T12:53:14.3621528Z             {
2026-06-04T12:53:14.3622174Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.3622611Z               "line": 26
2026-06-04T12:53:14.3623033Z             },
2026-06-04T12:53:14.3623446Z             {
2026-06-04T12:53:14.3624083Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.3624529Z               "line": 93
2026-06-04T12:53:14.3624943Z             },
2026-06-04T12:53:14.3625373Z             {
2026-06-04T12:53:14.3626085Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.3626551Z               "line": 158
2026-06-04T12:53:14.3626967Z             },
2026-06-04T12:53:14.3627390Z             {
2026-06-04T12:53:14.3628009Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:53:14.3628446Z               "line": 19
2026-06-04T12:53:14.3628870Z             },
2026-06-04T12:53:14.3629322Z             {
2026-06-04T12:53:14.3629944Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:53:14.3630386Z               "line": 50
2026-06-04T12:53:14.3630811Z             },
2026-06-04T12:53:14.3631237Z             {
2026-06-04T12:53:14.3631833Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T12:53:14.3632314Z               "line": 18
2026-06-04T12:53:14.3632726Z             },
2026-06-04T12:53:14.3633150Z             {
2026-06-04T12:53:14.3633708Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T12:53:14.3634513Z               "line": 65
2026-06-04T12:53:14.3634940Z             },
2026-06-04T12:53:14.3635495Z             {
2026-06-04T12:53:14.3636092Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.3636531Z               "line": 51
2026-06-04T12:53:14.3636951Z             }
2026-06-04T12:53:14.3637365Z           ]
2026-06-04T12:53:14.3637775Z         },
2026-06-04T12:53:14.3638207Z         "int": {
2026-06-04T12:53:14.3638695Z           "complete": false,
2026-06-04T12:53:14.3639229Z           "evidence": []
2026-06-04T12:53:14.3639647Z         },
2026-06-04T12:53:14.3640079Z         "unit": {
2026-06-04T12:53:14.3640535Z           "complete": true,
2026-06-04T12:53:14.3640985Z           "evidence": [
2026-06-04T12:53:14.3641410Z             {
2026-06-04T12:53:14.3642044Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.3642493Z               "line": 276
2026-06-04T12:53:14.3642910Z             },
2026-06-04T12:53:14.3643341Z             {
2026-06-04T12:53:14.3643976Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.3644432Z               "line": 295
2026-06-04T12:53:14.3644858Z             },
2026-06-04T12:53:14.3645268Z             {
2026-06-04T12:53:14.3645906Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.3646345Z               "line": 323
2026-06-04T12:53:14.3646770Z             },
2026-06-04T12:53:14.3647191Z             {
2026-06-04T12:53:14.3647818Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.3648275Z               "line": 372
2026-06-04T12:53:14.3653590Z             },
2026-06-04T12:53:14.3654133Z             {
2026-06-04T12:53:14.3654871Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.3655328Z               "line": 383
2026-06-04T12:53:14.3655752Z             },
2026-06-04T12:53:14.3656169Z             {
2026-06-04T12:53:14.3656807Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.3657280Z               "line": 414
2026-06-04T12:53:14.3657712Z             },
2026-06-04T12:53:14.3658123Z             {
2026-06-04T12:53:14.3658781Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.3659340Z               "line": 425
2026-06-04T12:53:14.3659763Z             },
2026-06-04T12:53:14.3660187Z             {
2026-06-04T12:53:14.3660800Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:53:14.3661253Z               "line": 77
2026-06-04T12:53:14.3661677Z             },
2026-06-04T12:53:14.3662101Z             {
2026-06-04T12:53:14.3662730Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:53:14.3663167Z               "line": 95
2026-06-04T12:53:14.3663596Z             },
2026-06-04T12:53:14.3664007Z             {
2026-06-04T12:53:14.3664632Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:53:14.3665074Z               "line": 106
2026-06-04T12:53:14.3665600Z             },
2026-06-04T12:53:14.3666032Z             {
2026-06-04T12:53:14.3666646Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:53:14.3667110Z               "line": 117
2026-06-04T12:53:14.3667522Z             },
2026-06-04T12:53:14.3667948Z             {
2026-06-04T12:53:14.3668569Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:53:14.3669021Z               "line": 124
2026-06-04T12:53:14.3669493Z             },
2026-06-04T12:53:14.3669908Z             {
2026-06-04T12:53:14.3670532Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T12:53:14.3670969Z               "line": 137
2026-06-04T12:53:14.3671397Z             },
2026-06-04T12:53:14.3671820Z             {
2026-06-04T12:53:14.3672383Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T12:53:14.3672831Z               "line": 106
2026-06-04T12:53:14.3673242Z             },
2026-06-04T12:53:14.3673663Z             {
2026-06-04T12:53:14.3674301Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T12:53:14.3675004Z               "line": 118
2026-06-04T12:53:14.3675425Z             },
2026-06-04T12:53:14.3675836Z             {
2026-06-04T12:53:14.3676584Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T12:53:14.3677039Z               "line": 317
2026-06-04T12:53:14.3677461Z             }
2026-06-04T12:53:14.3677904Z           ]
2026-06-04T12:53:14.3678327Z         }
2026-06-04T12:53:14.3678751Z       }
2026-06-04T12:53:14.3679205Z     },
2026-06-04T12:53:14.3679635Z     {
2026-06-04T12:53:14.3680213Z       "id": "REQ-HAZARD-REGISTRY-CONCURRENT",
2026-06-04T12:53:14.3681713Z       "title": "Concurrent SQLite openers (registry/spool) must not fail with 'database is locked' (4.7)",
2026-06-04T12:53:14.3682187Z       "requiredStages": [
2026-06-04T12:53:14.3682618Z         "impl",
2026-06-04T12:53:14.3683051Z         "unit"
2026-06-04T12:53:14.3683457Z       ],
2026-06-04T12:53:14.3683888Z       "stages": {
2026-06-04T12:53:14.3684308Z         "doc": {
2026-06-04T12:53:14.3684791Z           "complete": true,
2026-06-04T12:53:14.3685231Z           "evidence": [
2026-06-04T12:53:14.3685648Z             {
2026-06-04T12:53:14.3686207Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T12:53:14.3686647Z               "line": 137
2026-06-04T12:53:14.3687068Z             }
2026-06-04T12:53:14.3687484Z           ]
2026-06-04T12:53:14.3687905Z         },
2026-06-04T12:53:14.3688321Z         "impl": {
2026-06-04T12:53:14.3688789Z           "complete": true,
2026-06-04T12:53:14.3689280Z           "evidence": [
2026-06-04T12:53:14.3689694Z             {
2026-06-04T12:53:14.3690262Z               "path": "crates/spt-store/src/db.rs",
2026-06-04T12:53:14.3690701Z               "line": 29
2026-06-04T12:53:14.3691123Z             },
2026-06-04T12:53:14.3691530Z             {
2026-06-04T12:53:14.3692125Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.3692582Z               "line": 101
2026-06-04T12:53:14.3692995Z             },
2026-06-04T12:53:14.3693417Z             {
2026-06-04T12:53:14.3694053Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3694498Z               "line": 30
2026-06-04T12:53:14.3694927Z             },
2026-06-04T12:53:14.3695340Z             {
2026-06-04T12:53:14.3695939Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.3696381Z               "line": 48
2026-06-04T12:53:14.3696799Z             }
2026-06-04T12:53:14.3697208Z           ]
2026-06-04T12:53:14.3697626Z         },
2026-06-04T12:53:14.3698039Z         "int": {
2026-06-04T12:53:14.3698506Z           "complete": false,
2026-06-04T12:53:14.3698958Z           "evidence": []
2026-06-04T12:53:14.3699408Z         },
2026-06-04T12:53:14.3699836Z         "unit": {
2026-06-04T12:53:14.3700290Z           "complete": true,
2026-06-04T12:53:14.3700739Z           "evidence": [
2026-06-04T12:53:14.3701154Z             {
2026-06-04T12:53:14.3701786Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3702237Z               "line": 152
2026-06-04T12:53:14.3702658Z             }
2026-06-04T12:53:14.3703076Z           ]
2026-06-04T12:53:14.3703490Z         }
2026-06-04T12:53:14.3703919Z       }
2026-06-04T12:53:14.3704319Z     },
2026-06-04T12:53:14.3704732Z     {
2026-06-04T12:53:14.3705306Z       "id": "REQ-HAZARD-REGISTRY-DIR-CREATE",
2026-06-04T12:53:14.3707403Z       "title": "SQLite store opens create their parent dir themselves — a fresh-home registry op must not SQLITE_CANTOPEN (4.9)",
2026-06-04T12:53:14.3707891Z       "requiredStages": [
2026-06-04T12:53:14.3708310Z         "doc",
2026-06-04T12:53:14.3708737Z         "impl",
2026-06-04T12:53:14.3709150Z         "unit"
2026-06-04T12:53:14.3709608Z       ],
2026-06-04T12:53:14.3710040Z       "stages": {
2026-06-04T12:53:14.3710458Z         "doc": {
2026-06-04T12:53:14.3710919Z           "complete": true,
2026-06-04T12:53:14.3711359Z           "evidence": [
2026-06-04T12:53:14.3711783Z             {
2026-06-04T12:53:14.3712329Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T12:53:14.3712982Z               "line": 149
2026-06-04T12:53:14.3713410Z             }
2026-06-04T12:53:14.3713818Z           ]
2026-06-04T12:53:14.3714441Z         },
2026-06-04T12:53:14.3714867Z         "impl": {
2026-06-04T12:53:14.3715334Z           "complete": true,
2026-06-04T12:53:14.3715773Z           "evidence": [
2026-06-04T12:53:14.3716192Z             {
2026-06-04T12:53:14.3716830Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3717271Z               "line": 22
2026-06-04T12:53:14.3717701Z             }
2026-06-04T12:53:14.3718111Z           ]
2026-06-04T12:53:14.3718531Z         },
2026-06-04T12:53:14.3718943Z         "int": {
2026-06-04T12:53:14.3719461Z           "complete": false,
2026-06-04T12:53:14.3719922Z           "evidence": []
2026-06-04T12:53:14.3720337Z         },
2026-06-04T12:53:14.3720767Z         "unit": {
2026-06-04T12:53:14.3721217Z           "complete": true,
2026-06-04T12:53:14.3721666Z           "evidence": [
2026-06-04T12:53:14.3722086Z             {
2026-06-04T12:53:14.3722713Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3723175Z               "line": 257
2026-06-04T12:53:14.3723588Z             }
2026-06-04T12:53:14.3724007Z           ]
2026-06-04T12:53:14.3724413Z         }
2026-06-04T12:53:14.3724835Z       }
2026-06-04T12:53:14.3725244Z     },
2026-06-04T12:53:14.3725662Z     {
2026-06-04T12:53:14.3726257Z       "id": "REQ-HAZARD-REGISTRY-EPOCH-LEASE",
2026-06-04T12:53:14.3728601Z       "title": "Registry merge ordered by per-node monotonic epoch, never wall-clock — a stale Active can't clobber a newer Offline (4.8, red-team #8)",
2026-06-04T12:53:14.3729086Z       "requiredStages": [
2026-06-04T12:53:14.3729546Z         "impl",
2026-06-04T12:53:14.3729969Z         "unit"
2026-06-04T12:53:14.3730381Z       ],
2026-06-04T12:53:14.3730820Z       "stages": {
2026-06-04T12:53:14.3731245Z         "doc": {
2026-06-04T12:53:14.3731703Z           "complete": true,
2026-06-04T12:53:14.3732149Z           "evidence": [
2026-06-04T12:53:14.3732584Z             {
2026-06-04T12:53:14.3733134Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T12:53:14.3733601Z               "line": 143
2026-06-04T12:53:14.3737905Z             }
2026-06-04T12:53:14.3738432Z           ]
2026-06-04T12:53:14.3738844Z         },
2026-06-04T12:53:14.3739380Z         "impl": {
2026-06-04T12:53:14.3739851Z           "complete": true,
2026-06-04T12:53:14.3740297Z           "evidence": [
2026-06-04T12:53:14.3740713Z             {
2026-06-04T12:53:14.3741368Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.3741819Z               "line": 124
2026-06-04T12:53:14.3742231Z             },
2026-06-04T12:53:14.3742645Z             {
2026-06-04T12:53:14.3743230Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T12:53:14.3743680Z               "line": 15
2026-06-04T12:53:14.3744092Z             }
2026-06-04T12:53:14.3744512Z           ]
2026-06-04T12:53:14.3744932Z         },
2026-06-04T12:53:14.3745372Z         "int": {
2026-06-04T12:53:14.3745843Z           "complete": false,
2026-06-04T12:53:14.3746282Z           "evidence": []
2026-06-04T12:53:14.3746720Z         },
2026-06-04T12:53:14.3747140Z         "unit": {
2026-06-04T12:53:14.3747604Z           "complete": true,
2026-06-04T12:53:14.3748052Z           "evidence": [
2026-06-04T12:53:14.3748459Z             {
2026-06-04T12:53:14.3749124Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-04T12:53:14.3749601Z               "line": 87
2026-06-04T12:53:14.3750031Z             },
2026-06-04T12:53:14.3750433Z             {
2026-06-04T12:53:14.3751076Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.3751523Z               "line": 515
2026-06-04T12:53:14.3751936Z             },
2026-06-04T12:53:14.3752351Z             {
2026-06-04T12:53:14.3752993Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.3753449Z               "line": 534
2026-06-04T12:53:14.3753872Z             },
2026-06-04T12:53:14.3754526Z             {
2026-06-04T12:53:14.3755184Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:53:14.3755759Z               "line": 148
2026-06-04T12:53:14.3756192Z             },
2026-06-04T12:53:14.3756600Z             {
2026-06-04T12:53:14.3757194Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T12:53:14.3757643Z               "line": 74
2026-06-04T12:53:14.3758055Z             },
2026-06-04T12:53:14.3758470Z             {
2026-06-04T12:53:14.3759044Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T12:53:14.3759523Z               "line": 88
2026-06-04T12:53:14.3759940Z             },
2026-06-04T12:53:14.3760355Z             {
2026-06-04T12:53:14.3760949Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T12:53:14.3761385Z               "line": 104
2026-06-04T12:53:14.3761806Z             }
2026-06-04T12:53:14.3762216Z           ]
2026-06-04T12:53:14.3762631Z         }
2026-06-04T12:53:14.3763044Z       }
2026-06-04T12:53:14.3763467Z     },
2026-06-04T12:53:14.3763880Z     {
2026-06-04T12:53:14.3764466Z       "id": "REQ-HAZARD-REGISTRY-STALE-CLEAN",
2026-06-04T12:53:14.3765524Z       "title": "Stale registry entries degrade to fallback, never hard-fail (4.3)",
2026-06-04T12:53:14.3765998Z       "requiredStages": [
2026-06-04T12:53:14.3766419Z         "impl",
2026-06-04T12:53:14.3766832Z         "unit"
2026-06-04T12:53:14.3767255Z       ],
2026-06-04T12:53:14.3767692Z       "stages": {
2026-06-04T12:53:14.3768107Z         "doc": {
2026-06-04T12:53:14.3768577Z           "complete": false,
2026-06-04T12:53:14.3769025Z           "evidence": []
2026-06-04T12:53:14.3769485Z         },
2026-06-04T12:53:14.3769910Z         "impl": {
2026-06-04T12:53:14.3770373Z           "complete": true,
2026-06-04T12:53:14.3770817Z           "evidence": [
2026-06-04T12:53:14.3771228Z             {
2026-06-04T12:53:14.3771826Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T12:53:14.3772259Z               "line": 15
2026-06-04T12:53:14.3772690Z             },
2026-06-04T12:53:14.3773096Z             {
2026-06-04T12:53:14.3773726Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3774185Z               "line": 55
2026-06-04T12:53:14.3774595Z             },
2026-06-04T12:53:14.3775010Z             {
2026-06-04T12:53:14.3775625Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3776075Z               "line": 62
2026-06-04T12:53:14.3776488Z             },
2026-06-04T12:53:14.3776906Z             {
2026-06-04T12:53:14.3777538Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3777978Z               "line": 107
2026-06-04T12:53:14.3778398Z             },
2026-06-04T12:53:14.3778807Z             {
2026-06-04T12:53:14.3779474Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3779914Z               "line": 128
2026-06-04T12:53:14.3780337Z             }
2026-06-04T12:53:14.3780755Z           ]
2026-06-04T12:53:14.3781174Z         },
2026-06-04T12:53:14.3781601Z         "int": {
2026-06-04T12:53:14.3782062Z           "complete": false,
2026-06-04T12:53:14.3782522Z           "evidence": []
2026-06-04T12:53:14.3782929Z         },
2026-06-04T12:53:14.3783362Z         "unit": {
2026-06-04T12:53:14.3783824Z           "complete": true,
2026-06-04T12:53:14.3784261Z           "evidence": [
2026-06-04T12:53:14.3784676Z             {
2026-06-04T12:53:14.3785254Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T12:53:14.3785708Z               "line": 113
2026-06-04T12:53:14.3786119Z             },
2026-06-04T12:53:14.3786536Z             {
2026-06-04T12:53:14.3787122Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T12:53:14.3787561Z               "line": 119
2026-06-04T12:53:14.3787980Z             },
2026-06-04T12:53:14.3788394Z             {
2026-06-04T12:53:14.3788976Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T12:53:14.3789446Z               "line": 130
2026-06-04T12:53:14.3790042Z             },
2026-06-04T12:53:14.3790465Z             {
2026-06-04T12:53:14.3791097Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3791753Z               "line": 183
2026-06-04T12:53:14.3792187Z             },
2026-06-04T12:53:14.3792611Z             {
2026-06-04T12:53:14.3793238Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3793689Z               "line": 193
2026-06-04T12:53:14.3794111Z             },
2026-06-04T12:53:14.3794527Z             {
2026-06-04T12:53:14.3795156Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3795597Z               "line": 237
2026-06-04T12:53:14.3796024Z             },
2026-06-04T12:53:14.3796441Z             {
2026-06-04T12:53:14.3797057Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3797504Z               "line": 249
2026-06-04T12:53:14.3797924Z             },
2026-06-04T12:53:14.3798341Z             {
2026-06-04T12:53:14.3798955Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.3799475Z               "line": 275
2026-06-04T12:53:14.3799904Z             }
2026-06-04T12:53:14.3800325Z           ]
2026-06-04T12:53:14.3800737Z         }
2026-06-04T12:53:14.3801144Z       }
2026-06-04T12:53:14.3801556Z     },
2026-06-04T12:53:14.3801963Z     {
2026-06-04T12:53:14.3802520Z       "id": "REQ-HAZARD-RESTART-IDEMPOTENT",
2026-06-04T12:53:14.3804055Z       "title": "Idempotent/exactly-once delivery across brain restart at every broker boundary (codex #14)",
2026-06-04T12:53:14.3804523Z       "requiredStages": [
2026-06-04T12:53:14.3804953Z         "impl",
2026-06-04T12:53:14.3805369Z         "unit",
2026-06-04T12:53:14.3805862Z         "int"
2026-06-04T12:53:14.3806270Z       ],
2026-06-04T12:53:14.3806699Z       "stages": {
2026-06-04T12:53:14.3807120Z         "doc": {
2026-06-04T12:53:14.3807580Z           "complete": false,
2026-06-04T12:53:14.3808036Z           "evidence": []
2026-06-04T12:53:14.3808447Z         },
2026-06-04T12:53:14.3808882Z         "impl": {
2026-06-04T12:53:14.3809362Z           "complete": true,
2026-06-04T12:53:14.3809813Z           "evidence": [
2026-06-04T12:53:14.3810238Z             {
2026-06-04T12:53:14.3810840Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:53:14.3811288Z               "line": 246
2026-06-04T12:53:14.3811697Z             },
2026-06-04T12:53:14.3812117Z             {
2026-06-04T12:53:14.3812711Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:53:14.3813163Z               "line": 506
2026-06-04T12:53:14.3813585Z             },
2026-06-04T12:53:14.3813991Z             {
2026-06-04T12:53:14.3814601Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:53:14.3815041Z               "line": 529
2026-06-04T12:53:14.3819115Z             },
2026-06-04T12:53:14.3819716Z             {
2026-06-04T12:53:14.3820349Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:53:14.3820804Z               "line": 553
2026-06-04T12:53:14.3821243Z             },
2026-06-04T12:53:14.3821662Z             {
2026-06-04T12:53:14.3822272Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:53:14.3822726Z               "line": 463
2026-06-04T12:53:14.3823137Z             },
2026-06-04T12:53:14.3823551Z             {
2026-06-04T12:53:14.3824163Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:53:14.3824602Z               "line": 544
2026-06-04T12:53:14.3825025Z             },
2026-06-04T12:53:14.3825434Z             {
2026-06-04T12:53:14.3826118Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:53:14.3826927Z               "line": 588
2026-06-04T12:53:14.3827588Z             },
2026-06-04T12:53:14.3828106Z             {
2026-06-04T12:53:14.3828869Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T12:53:14.3829544Z               "line": 631
2026-06-04T12:53:14.3830146Z             },
2026-06-04T12:53:14.3830679Z             {
2026-06-04T12:53:14.3831485Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:53:14.3832367Z               "line": 46
2026-06-04T12:53:14.3832801Z             },
2026-06-04T12:53:14.3833396Z             {
2026-06-04T12:53:14.3834024Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:53:14.3834466Z               "line": 160
2026-06-04T12:53:14.3834898Z             },
2026-06-04T12:53:14.3835311Z             {
2026-06-04T12:53:14.3835913Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T12:53:14.3836360Z               "line": 71
2026-06-04T12:53:14.3836771Z             },
2026-06-04T12:53:14.3837192Z             {
2026-06-04T12:53:14.3837773Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.3838379Z               "line": 128
2026-06-04T12:53:14.3838967Z             },
2026-06-04T12:53:14.3839716Z             {
2026-06-04T12:53:14.3840326Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.3840773Z               "line": 174
2026-06-04T12:53:14.3841218Z             }
2026-06-04T12:53:14.3841633Z           ]
2026-06-04T12:53:14.3842055Z         },
2026-06-04T12:53:14.3842488Z         "int": {
2026-06-04T12:53:14.3843251Z           "complete": true,
2026-06-04T12:53:14.3843690Z           "evidence": [
2026-06-04T12:53:14.3844105Z             {
2026-06-04T12:53:14.3844786Z               "path": "crates/spt-daemon/tests/idempotent.rs",
2026-06-04T12:53:14.3845224Z               "line": 27
2026-06-04T12:53:14.3845650Z             },
2026-06-04T12:53:14.3846071Z             {
2026-06-04T12:53:14.3846741Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T12:53:14.3847189Z               "line": 125
2026-06-04T12:53:14.3847607Z             },
2026-06-04T12:53:14.3848026Z             {
2026-06-04T12:53:14.3848686Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-04T12:53:14.3849135Z               "line": 189
2026-06-04T12:53:14.3849593Z             }
2026-06-04T12:53:14.3850011Z           ]
2026-06-04T12:53:14.3850439Z         },
2026-06-04T12:53:14.3850855Z         "unit": {
2026-06-04T12:53:14.3851321Z           "complete": true,
2026-06-04T12:53:14.3851777Z           "evidence": [
2026-06-04T12:53:14.3852198Z             {
2026-06-04T12:53:14.3852821Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:53:14.3853266Z               "line": 282
2026-06-04T12:53:14.3853689Z             },
2026-06-04T12:53:14.3854103Z             {
2026-06-04T12:53:14.3854724Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:53:14.3855169Z               "line": 300
2026-06-04T12:53:14.3855589Z             },
2026-06-04T12:53:14.3856007Z             {
2026-06-04T12:53:14.3856614Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T12:53:14.3857063Z               "line": 318
2026-06-04T12:53:14.3857483Z             },
2026-06-04T12:53:14.3857895Z             {
2026-06-04T12:53:14.3858521Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T12:53:14.3858973Z               "line": 221
2026-06-04T12:53:14.3859442Z             },
2026-06-04T12:53:14.3859856Z             {
2026-06-04T12:53:14.3860508Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T12:53:14.3860957Z               "line": 204
2026-06-04T12:53:14.3861384Z             },
2026-06-04T12:53:14.3861794Z             {
2026-06-04T12:53:14.3862404Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T12:53:14.3862849Z               "line": 182
2026-06-04T12:53:14.3863266Z             },
2026-06-04T12:53:14.3863684Z             {
2026-06-04T12:53:14.3864268Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.3864721Z               "line": 441
2026-06-04T12:53:14.3865143Z             },
2026-06-04T12:53:14.3865564Z             {
2026-06-04T12:53:14.3866148Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.3866590Z               "line": 465
2026-06-04T12:53:14.3867010Z             }
2026-06-04T12:53:14.3867424Z           ]
2026-06-04T12:53:14.3868046Z         }
2026-06-04T12:53:14.3868458Z       }
2026-06-04T12:53:14.3868875Z     },
2026-06-04T12:53:14.3869341Z     {
2026-06-04T12:53:14.3870134Z       "id": "REQ-HAZARD-SINGLE-PATH-SOURCE",
2026-06-04T12:53:14.3871171Z       "title": "Single path/registry source of truth; no layout ambiguity (6.1)",
2026-06-04T12:53:14.3871642Z       "requiredStages": [
2026-06-04T12:53:14.3872074Z         "impl",
2026-06-04T12:53:14.3872491Z         "unit"
2026-06-04T12:53:14.3872914Z       ],
2026-06-04T12:53:14.3873345Z       "stages": {
2026-06-04T12:53:14.3873771Z         "doc": {
2026-06-04T12:53:14.3874234Z           "complete": false,
2026-06-04T12:53:14.3874681Z           "evidence": []
2026-06-04T12:53:14.3875123Z         },
2026-06-04T12:53:14.3875877Z         "impl": {
2026-06-04T12:53:14.3876541Z           "complete": true,
2026-06-04T12:53:14.3877071Z           "evidence": [
2026-06-04T12:53:14.3877972Z             {
2026-06-04T12:53:14.3878931Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.3879544Z               "line": 56
2026-06-04T12:53:14.3880124Z             },
2026-06-04T12:53:14.3880673Z             {
2026-06-04T12:53:14.3881451Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.3881954Z               "line": 63
2026-06-04T12:53:14.3882398Z             },
2026-06-04T12:53:14.3882847Z             {
2026-06-04T12:53:14.3883759Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3884287Z               "line": 33
2026-06-04T12:53:14.3884767Z             },
2026-06-04T12:53:14.3885249Z             {
2026-06-04T12:53:14.3885885Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3886349Z               "line": 61
2026-06-04T12:53:14.3886787Z             },
2026-06-04T12:53:14.3887216Z             {
2026-06-04T12:53:14.3887837Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3888305Z               "line": 70
2026-06-04T12:53:14.3888740Z             },
2026-06-04T12:53:14.3889254Z             {
2026-06-04T12:53:14.3889897Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3890398Z               "line": 79
2026-06-04T12:53:14.3890868Z             },
2026-06-04T12:53:14.3891336Z             {
2026-06-04T12:53:14.3891970Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3892429Z               "line": 88
2026-06-04T12:53:14.3892867Z             },
2026-06-04T12:53:14.3893299Z             {
2026-06-04T12:53:14.3893949Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3894452Z               "line": 97
2026-06-04T12:53:14.3894909Z             },
2026-06-04T12:53:14.3895357Z             {
2026-06-04T12:53:14.3895972Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3896441Z               "line": 105
2026-06-04T12:53:14.3896881Z             },
2026-06-04T12:53:14.3897342Z             {
2026-06-04T12:53:14.3897952Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3898444Z               "line": 114
2026-06-04T12:53:14.3898885Z             },
2026-06-04T12:53:14.3899356Z             {
2026-06-04T12:53:14.3900131Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3900582Z               "line": 123
2026-06-04T12:53:14.3901005Z             },
2026-06-04T12:53:14.3901423Z             {
2026-06-04T12:53:14.3902031Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3902519Z               "line": 130
2026-06-04T12:53:14.3902973Z             },
2026-06-04T12:53:14.3910198Z             {
2026-06-04T12:53:14.3911072Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3911561Z               "line": 137
2026-06-04T12:53:14.3911995Z             },
2026-06-04T12:53:14.3912449Z             {
2026-06-04T12:53:14.3913062Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3913518Z               "line": 145
2026-06-04T12:53:14.3913971Z             },
2026-06-04T12:53:14.3914948Z             {
2026-06-04T12:53:14.3915656Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3916270Z               "line": 154
2026-06-04T12:53:14.3916696Z             },
2026-06-04T12:53:14.3917141Z             {
2026-06-04T12:53:14.3917743Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3918207Z               "line": 221
2026-06-04T12:53:14.3918632Z             },
2026-06-04T12:53:14.3919068Z             {
2026-06-04T12:53:14.3919917Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3920528Z               "line": 233
2026-06-04T12:53:14.3920955Z             },
2026-06-04T12:53:14.3921369Z             {
2026-06-04T12:53:14.3921974Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3922423Z               "line": 320
2026-06-04T12:53:14.3922858Z             }
2026-06-04T12:53:14.3923290Z           ]
2026-06-04T12:53:14.3923708Z         },
2026-06-04T12:53:14.3924141Z         "int": {
2026-06-04T12:53:14.3924631Z           "complete": false,
2026-06-04T12:53:14.3925090Z           "evidence": []
2026-06-04T12:53:14.3925509Z         },
2026-06-04T12:53:14.3925965Z         "unit": {
2026-06-04T12:53:14.3926450Z           "complete": true,
2026-06-04T12:53:14.3926913Z           "evidence": [
2026-06-04T12:53:14.3927357Z             {
2026-06-04T12:53:14.3927956Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3928430Z               "line": 390
2026-06-04T12:53:14.3928870Z             },
2026-06-04T12:53:14.3929491Z             {
2026-06-04T12:53:14.3930271Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3930956Z               "line": 416
2026-06-04T12:53:14.3931499Z             },
2026-06-04T12:53:14.3932030Z             {
2026-06-04T12:53:14.3932752Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3933377Z               "line": 429
2026-06-04T12:53:14.3933815Z             },
2026-06-04T12:53:14.3934249Z             {
2026-06-04T12:53:14.3935016Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.3935534Z               "line": 471
2026-06-04T12:53:14.3935986Z             }
2026-06-04T12:53:14.3936425Z           ]
2026-06-04T12:53:14.3936861Z         }
2026-06-04T12:53:14.3937305Z       }
2026-06-04T12:53:14.3937744Z     },
2026-06-04T12:53:14.3938168Z     {
2026-06-04T12:53:14.3938726Z       "id": "REQ-HAZARD-SOFT-CLEANUP",
2026-06-04T12:53:14.3940022Z       "title": "Soft-cleanup preserves state, removes only the ready marker (6.2)",
2026-06-04T12:53:14.3940539Z       "requiredStages": [
2026-06-04T12:53:14.3940998Z         "impl",
2026-06-04T12:53:14.3941459Z         "unit"
2026-06-04T12:53:14.3941904Z       ],
2026-06-04T12:53:14.3942344Z       "stages": {
2026-06-04T12:53:14.3942794Z         "doc": {
2026-06-04T12:53:14.3943264Z           "complete": false,
2026-06-04T12:53:14.3943724Z           "evidence": []
2026-06-04T12:53:14.3944139Z         },
2026-06-04T12:53:14.3944575Z         "impl": {
2026-06-04T12:53:14.3945064Z           "complete": true,
2026-06-04T12:53:14.3945504Z           "evidence": [
2026-06-04T12:53:14.3945962Z             {
2026-06-04T12:53:14.3946544Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:53:14.3947006Z               "line": 107
2026-06-04T12:53:14.3947451Z             },
2026-06-04T12:53:14.3947930Z             {
2026-06-04T12:53:14.3948611Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.3949088Z               "line": 118
2026-06-04T12:53:14.3949615Z             }
2026-06-04T12:53:14.3950081Z           ]
2026-06-04T12:53:14.3950721Z         },
2026-06-04T12:53:14.3951230Z         "int": {
2026-06-04T12:53:14.3951914Z           "complete": false,
2026-06-04T12:53:14.3952442Z           "evidence": []
2026-06-04T12:53:14.3952906Z         },
2026-06-04T12:53:14.3953385Z         "unit": {
2026-06-04T12:53:14.3953895Z           "complete": true,
2026-06-04T12:53:14.3954420Z           "evidence": [
2026-06-04T12:53:14.3954891Z             {
2026-06-04T12:53:14.3955930Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:53:14.3956438Z               "line": 225
2026-06-04T12:53:14.3957099Z             },
2026-06-04T12:53:14.3957548Z             {
2026-06-04T12:53:14.3958198Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.3958679Z               "line": 345
2026-06-04T12:53:14.3959111Z             },
2026-06-04T12:53:14.3959658Z             {
2026-06-04T12:53:14.3960322Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.3960809Z               "line": 355
2026-06-04T12:53:14.3961272Z             }
2026-06-04T12:53:14.3961706Z           ]
2026-06-04T12:53:14.3962142Z         }
2026-06-04T12:53:14.3962580Z       }
2026-06-04T12:53:14.3963023Z     },
2026-06-04T12:53:14.3963465Z     {
2026-06-04T12:53:14.3964026Z       "id": "REQ-HAZARD-STALE-INDEX-LOCK",
2026-06-04T12:53:14.3964870Z       "title": "Sweep stale lockfiles on daemon boot (1.3)",
2026-06-04T12:53:14.3965364Z       "requiredStages": [],
2026-06-04T12:53:14.3965935Z       "stages": {
2026-06-04T12:53:14.3966375Z         "doc": {
2026-06-04T12:53:14.3966905Z           "complete": false,
2026-06-04T12:53:14.3967396Z           "evidence": []
2026-06-04T12:53:14.3967838Z         },
2026-06-04T12:53:14.3968306Z         "impl": {
2026-06-04T12:53:14.3968962Z           "complete": false,
2026-06-04T12:53:14.3969596Z           "evidence": []
2026-06-04T12:53:14.3970096Z         },
2026-06-04T12:53:14.3970597Z         "int": {
2026-06-04T12:53:14.3971181Z           "complete": false,
2026-06-04T12:53:14.3971694Z           "evidence": []
2026-06-04T12:53:14.3972169Z         },
2026-06-04T12:53:14.3972647Z         "unit": {
2026-06-04T12:53:14.3973162Z           "complete": false,
2026-06-04T12:53:14.3973668Z           "evidence": []
2026-06-04T12:53:14.3974141Z         }
2026-06-04T12:53:14.3974601Z       }
2026-06-04T12:53:14.3975053Z     },
2026-06-04T12:53:14.3975579Z     {
2026-06-04T12:53:14.3976244Z       "id": "REQ-HAZARD-STALE-SIGNOFF-SENTINEL",
2026-06-04T12:53:14.3977286Z       "title": "Stale signoff sentinel does not kill a fresh start (3.2)",
2026-06-04T12:53:14.3977833Z       "requiredStages": [
2026-06-04T12:53:14.3978344Z         "impl",
2026-06-04T12:53:14.3978847Z         "unit"
2026-06-04T12:53:14.3979391Z       ],
2026-06-04T12:53:14.3979927Z       "stages": {
2026-06-04T12:53:14.3980420Z         "doc": {
2026-06-04T12:53:14.3980952Z           "complete": false,
2026-06-04T12:53:14.3981461Z           "evidence": []
2026-06-04T12:53:14.3981935Z         },
2026-06-04T12:53:14.3982434Z         "impl": {
2026-06-04T12:53:14.3982955Z           "complete": true,
2026-06-04T12:53:14.3983759Z           "evidence": [
2026-06-04T12:53:14.3984279Z             {
2026-06-04T12:53:14.3985032Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.3985528Z               "line": 424
2026-06-04T12:53:14.3986006Z             },
2026-06-04T12:53:14.3986491Z             {
2026-06-04T12:53:14.3987165Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:53:14.3987705Z               "line": 28
2026-06-04T12:53:14.3988179Z             }
2026-06-04T12:53:14.3988652Z           ]
2026-06-04T12:53:14.3989103Z         },
2026-06-04T12:53:14.3989688Z         "int": {
2026-06-04T12:53:14.3990264Z           "complete": false,
2026-06-04T12:53:14.3990804Z           "evidence": []
2026-06-04T12:53:14.3991326Z         },
2026-06-04T12:53:14.3991822Z         "unit": {
2026-06-04T12:53:14.3992378Z           "complete": true,
2026-06-04T12:53:14.3992885Z           "evidence": [
2026-06-04T12:53:14.3993386Z             {
2026-06-04T12:53:14.3994085Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:53:14.3994595Z               "line": 200
2026-06-04T12:53:14.4002125Z             }
2026-06-04T12:53:14.4002790Z           ]
2026-06-04T12:53:14.4003261Z         }
2026-06-04T12:53:14.4003709Z       }
2026-06-04T12:53:14.4004162Z     },
2026-06-04T12:53:14.4004620Z     {
2026-06-04T12:53:14.4005702Z       "id": "REQ-HAZARD-STDIN-SESSION-ID",
2026-06-04T12:53:14.4006487Z       "title": "Stdin session_id precedence over env (2.2)",
2026-06-04T12:53:14.4007228Z       "requiredStages": [],
2026-06-04T12:53:14.4007760Z       "stages": {
2026-06-04T12:53:14.4008281Z         "doc": {
2026-06-04T12:53:14.4008868Z           "complete": false,
2026-06-04T12:53:14.4009501Z           "evidence": []
2026-06-04T12:53:14.4010124Z         },
2026-06-04T12:53:14.4010583Z         "impl": {
2026-06-04T12:53:14.4011058Z           "complete": false,
2026-06-04T12:53:14.4011518Z           "evidence": []
2026-06-04T12:53:14.4011935Z         },
2026-06-04T12:53:14.4012513Z         "int": {
2026-06-04T12:53:14.4013036Z           "complete": false,
2026-06-04T12:53:14.4013513Z           "evidence": []
2026-06-04T12:53:14.4013959Z         },
2026-06-04T12:53:14.4014399Z         "unit": {
2026-06-04T12:53:14.4014883Z           "complete": false,
2026-06-04T12:53:14.4015341Z           "evidence": []
2026-06-04T12:53:14.4015777Z         }
2026-06-04T12:53:14.4016249Z       }
2026-06-04T12:53:14.4016673Z     },
2026-06-04T12:53:14.4017105Z     {
2026-06-04T12:53:14.4017706Z       "id": "REQ-HAZARD-SUBPROCESS-TIMEOUT",
2026-06-04T12:53:14.4018531Z       "title": "Every harness/git subprocess has a timeout (5.3)",
2026-06-04T12:53:14.4019013Z       "requiredStages": [
2026-06-04T12:53:14.4019686Z         "impl",
2026-06-04T12:53:14.4020120Z         "unit"
2026-06-04T12:53:14.4020531Z       ],
2026-06-04T12:53:14.4020968Z       "stages": {
2026-06-04T12:53:14.4021388Z         "doc": {
2026-06-04T12:53:14.4021858Z           "complete": false,
2026-06-04T12:53:14.4022297Z           "evidence": []
2026-06-04T12:53:14.4022725Z         },
2026-06-04T12:53:14.4023157Z         "impl": {
2026-06-04T12:53:14.4023613Z           "complete": true,
2026-06-04T12:53:14.4024068Z           "evidence": [
2026-06-04T12:53:14.4024477Z             {
2026-06-04T12:53:14.4025055Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T12:53:14.4025513Z               "line": 19
2026-06-04T12:53:14.4025947Z             },
2026-06-04T12:53:14.4026372Z             {
2026-06-04T12:53:14.4027035Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:53:14.4027492Z               "line": 325
2026-06-04T12:53:14.4027905Z             },
2026-06-04T12:53:14.4028328Z             {
2026-06-04T12:53:14.4028957Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:53:14.4029447Z               "line": 361
2026-06-04T12:53:14.4030240Z             },
2026-06-04T12:53:14.4030663Z             {
2026-06-04T12:53:14.4031269Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T12:53:14.4031709Z               "line": 15
2026-06-04T12:53:14.4032141Z             },
2026-06-04T12:53:14.4032557Z             {
2026-06-04T12:53:14.4033169Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T12:53:14.4033617Z               "line": 48
2026-06-04T12:53:14.4034030Z             },
2026-06-04T12:53:14.4034453Z             {
2026-06-04T12:53:14.4035056Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T12:53:14.4035518Z               "line": 106
2026-06-04T12:53:14.4035939Z             }
2026-06-04T12:53:14.4036359Z           ]
2026-06-04T12:53:14.4036776Z         },
2026-06-04T12:53:14.4037202Z         "int": {
2026-06-04T12:53:14.4037672Z           "complete": false,
2026-06-04T12:53:14.4038113Z           "evidence": []
2026-06-04T12:53:14.4038538Z         },
2026-06-04T12:53:14.4038957Z         "unit": {
2026-06-04T12:53:14.4039625Z           "complete": true,
2026-06-04T12:53:14.4040259Z           "evidence": [
2026-06-04T12:53:14.4040671Z             {
2026-06-04T12:53:14.4041313Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:53:14.4041758Z               "line": 453
2026-06-04T12:53:14.4042186Z             },
2026-06-04T12:53:14.4042599Z             {
2026-06-04T12:53:14.4043199Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T12:53:14.4043653Z               "line": 149
2026-06-04T12:53:14.4044425Z             },
2026-06-04T12:53:14.4044850Z             {
2026-06-04T12:53:14.4045442Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T12:53:14.4046060Z               "line": 156
2026-06-04T12:53:14.4046475Z             }
2026-06-04T12:53:14.4046900Z           ]
2026-06-04T12:53:14.4047316Z         }
2026-06-04T12:53:14.4047729Z       }
2026-06-04T12:53:14.4048147Z     },
2026-06-04T12:53:14.4048552Z     {
2026-06-04T12:53:14.4049134Z       "id": "REQ-HAZARD-UNC-PATH-STRIP",
2026-06-04T12:53:14.4050372Z       "title": "Strip Windows UNC prefix on serialized paths (5.4)",
2026-06-04T12:53:14.4050861Z       "requiredStages": [
2026-06-04T12:53:14.4051309Z         "impl",
2026-06-04T12:53:14.4051730Z         "unit"
2026-06-04T12:53:14.4052157Z       ],
2026-06-04T12:53:14.4052590Z       "stages": {
2026-06-04T12:53:14.4053021Z         "doc": {
2026-06-04T12:53:14.4053486Z           "complete": false,
2026-06-04T12:53:14.4053943Z           "evidence": []
2026-06-04T12:53:14.4054378Z         },
2026-06-04T12:53:14.4054802Z         "impl": {
2026-06-04T12:53:14.4055268Z           "complete": true,
2026-06-04T12:53:14.4055718Z           "evidence": [
2026-06-04T12:53:14.4056141Z             {
2026-06-04T12:53:14.4056731Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:53:14.4057181Z               "line": 35
2026-06-04T12:53:14.4057598Z             }
2026-06-04T12:53:14.4058008Z           ]
2026-06-04T12:53:14.4058432Z         },
2026-06-04T12:53:14.4058847Z         "int": {
2026-06-04T12:53:14.4059359Z           "complete": false,
2026-06-04T12:53:14.4060167Z           "evidence": []
2026-06-04T12:53:14.4060600Z         },
2026-06-04T12:53:14.4061029Z         "unit": {
2026-06-04T12:53:14.4061482Z           "complete": true,
2026-06-04T12:53:14.4061932Z           "evidence": [
2026-06-04T12:53:14.4062341Z             {
2026-06-04T12:53:14.4062948Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T12:53:14.4063394Z               "line": 217
2026-06-04T12:53:14.4063877Z             }
2026-06-04T12:53:14.4064305Z           ]
2026-06-04T12:53:14.4064721Z         }
2026-06-04T12:53:14.4065150Z       }
2026-06-04T12:53:14.4065558Z     },
2026-06-04T12:53:14.4065976Z     {
2026-06-04T12:53:14.4066567Z       "id": "REQ-HAZARD-UPDATE-ROLLBACK",
2026-06-04T12:53:14.4068078Z       "title": "Self-update rejects version rollback; metadata expiry + adapter content signing (codex #5)",
2026-06-04T12:53:14.4068560Z       "requiredStages": [
2026-06-04T12:53:14.4068989Z         "impl",
2026-06-04T12:53:14.4069477Z         "unit"
2026-06-04T12:53:14.4069904Z       ],
2026-06-04T12:53:14.4070346Z       "stages": {
2026-06-04T12:53:14.4070762Z         "doc": {
2026-06-04T12:53:14.4071233Z           "complete": false,
2026-06-04T12:53:14.4071692Z           "evidence": []
2026-06-04T12:53:14.4072102Z         },
2026-06-04T12:53:14.4072534Z         "impl": {
2026-06-04T12:53:14.4072992Z           "complete": true,
2026-06-04T12:53:14.4073445Z           "evidence": [
2026-06-04T12:53:14.4073872Z             {
2026-06-04T12:53:14.4074527Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:53:14.4075074Z               "line": 256
2026-06-04T12:53:14.4075481Z             },
2026-06-04T12:53:14.4075901Z             {
2026-06-04T12:53:14.4076524Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.4076980Z               "line": 221
2026-06-04T12:53:14.4077397Z             },
2026-06-04T12:53:14.4077819Z             {
2026-06-04T12:53:14.4078444Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:53:14.4078889Z               "line": 150
2026-06-04T12:53:14.4079538Z             }
2026-06-04T12:53:14.4079967Z           ]
2026-06-04T12:53:14.4080389Z         },
2026-06-04T12:53:14.4080815Z         "int": {
2026-06-04T12:53:14.4081291Z           "complete": false,
2026-06-04T12:53:14.4081753Z           "evidence": []
2026-06-04T12:53:14.4082172Z         },
2026-06-04T12:53:14.4090286Z         "unit": {
2026-06-04T12:53:14.4091255Z           "complete": true,
2026-06-04T12:53:14.4091728Z           "evidence": [
2026-06-04T12:53:14.4092289Z             {
2026-06-04T12:53:14.4092951Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.4093406Z               "line": 477
2026-06-04T12:53:14.4093821Z             },
2026-06-04T12:53:14.4094243Z             {
2026-06-04T12:53:14.4094865Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.4095315Z               "line": 488
2026-06-04T12:53:14.4095731Z             },
2026-06-04T12:53:14.4096155Z             {
2026-06-04T12:53:14.4096790Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.4097236Z               "line": 504
2026-06-04T12:53:14.4097660Z             },
2026-06-04T12:53:14.4098066Z             {
2026-06-04T12:53:14.4098693Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.4099131Z               "line": 518
2026-06-04T12:53:14.4099654Z             },
2026-06-04T12:53:14.4100094Z             {
2026-06-04T12:53:14.4100769Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T12:53:14.4101226Z               "line": 268
2026-06-04T12:53:14.4101640Z             }
2026-06-04T12:53:14.4102055Z           ]
2026-06-04T12:53:14.4102463Z         }
2026-06-04T12:53:14.4102880Z       }
2026-06-04T12:53:14.4103354Z     },
2026-06-04T12:53:14.4103802Z     {
2026-06-04T12:53:14.4104335Z       "id": "REQ-HAZARD-WAN-ORIGIN-AUTH",
2026-06-04T12:53:14.4109043Z       "title": "WAN-inbound origin is transport truth, never payload: the access gate's subject (ADR-0009 origin-node whitelist) is the QUIC handshake-proven remote node id from the broker's conn/stream table — a forged origin/node field inside record bytes is inert (7.5)",
2026-06-04T12:53:14.4109600Z       "requiredStages": [
2026-06-04T12:53:14.4110031Z         "doc",
2026-06-04T12:53:14.4110455Z         "impl",
2026-06-04T12:53:14.4110879Z         "unit"
2026-06-04T12:53:14.4111288Z       ],
2026-06-04T12:53:14.4111756Z       "stages": {
2026-06-04T12:53:14.4112169Z         "doc": {
2026-06-04T12:53:14.4112635Z           "complete": true,
2026-06-04T12:53:14.4113105Z           "evidence": [
2026-06-04T12:53:14.4113519Z             {
2026-06-04T12:53:14.4114065Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T12:53:14.4114507Z               "line": 259
2026-06-04T12:53:14.4114925Z             }
2026-06-04T12:53:14.4115334Z           ]
2026-06-04T12:53:14.4115753Z         },
2026-06-04T12:53:14.4116191Z         "impl": {
2026-06-04T12:53:14.4116649Z           "complete": true,
2026-06-04T12:53:14.4117101Z           "evidence": [
2026-06-04T12:53:14.4117512Z             {
2026-06-04T12:53:14.4118137Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:53:14.4118574Z               "line": 85
2026-06-04T12:53:14.4118998Z             },
2026-06-04T12:53:14.4119462Z             {
2026-06-04T12:53:14.4120080Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:53:14.4120537Z               "line": 99
2026-06-04T12:53:14.4120948Z             },
2026-06-04T12:53:14.4121370Z             {
2026-06-04T12:53:14.4122011Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:53:14.4122453Z               "line": 53
2026-06-04T12:53:14.4122878Z             },
2026-06-04T12:53:14.4123288Z             {
2026-06-04T12:53:14.4123933Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:53:14.4124365Z               "line": 89
2026-06-04T12:53:14.4124786Z             },
2026-06-04T12:53:14.4125195Z             {
2026-06-04T12:53:14.4125843Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:53:14.4126287Z               "line": 29
2026-06-04T12:53:14.4126696Z             },
2026-06-04T12:53:14.4127116Z             {
2026-06-04T12:53:14.4127747Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:53:14.4128190Z               "line": 75
2026-06-04T12:53:14.4128601Z             },
2026-06-04T12:53:14.4129248Z             {
2026-06-04T12:53:14.4129947Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:53:14.4130524Z               "line": 121
2026-06-04T12:53:14.4130949Z             },
2026-06-04T12:53:14.4131356Z             {
2026-06-04T12:53:14.4131946Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.4132395Z               "line": 40
2026-06-04T12:53:14.4132807Z             },
2026-06-04T12:53:14.4133226Z             {
2026-06-04T12:53:14.4133807Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.4134257Z               "line": 161
2026-06-04T12:53:14.4134673Z             },
2026-06-04T12:53:14.4135100Z             {
2026-06-04T12:53:14.4135682Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T12:53:14.4136118Z               "line": 70
2026-06-04T12:53:14.4136538Z             },
2026-06-04T12:53:14.4136943Z             {
2026-06-04T12:53:14.4137532Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:53:14.4137987Z               "line": 210
2026-06-04T12:53:14.4138409Z             },
2026-06-04T12:53:14.4138822Z             {
2026-06-04T12:53:14.4139461Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T12:53:14.4139911Z               "line": 37
2026-06-04T12:53:14.4140321Z             },
2026-06-04T12:53:14.4140737Z             {
2026-06-04T12:53:14.4141351Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T12:53:14.4141801Z               "line": 38
2026-06-04T12:53:14.4142219Z             },
2026-06-04T12:53:14.4142629Z             {
2026-06-04T12:53:14.4143258Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:53:14.4143695Z               "line": 36
2026-06-04T12:53:14.4144112Z             },
2026-06-04T12:53:14.4144516Z             {
2026-06-04T12:53:14.4145108Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T12:53:14.4145554Z               "line": 40
2026-06-04T12:53:14.4145964Z             }
2026-06-04T12:53:14.4146390Z           ]
2026-06-04T12:53:14.4146797Z         },
2026-06-04T12:53:14.4147218Z         "int": {
2026-06-04T12:53:14.4147682Z           "complete": false,
2026-06-04T12:53:14.4148129Z           "evidence": []
2026-06-04T12:53:14.4148546Z         },
2026-06-04T12:53:14.4148959Z         "unit": {
2026-06-04T12:53:14.4149499Z           "complete": true,
2026-06-04T12:53:14.4149943Z           "evidence": [
2026-06-04T12:53:14.4150364Z             {
2026-06-04T12:53:14.4151004Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:53:14.4151457Z               "line": 179
2026-06-04T12:53:14.4151879Z             },
2026-06-04T12:53:14.4152291Z             {
2026-06-04T12:53:14.4152961Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-04T12:53:14.4153396Z               "line": 117
2026-06-04T12:53:14.4153821Z             },
2026-06-04T12:53:14.4154229Z             {
2026-06-04T12:53:14.4154912Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T12:53:14.4155375Z               "line": 344
2026-06-04T12:53:14.4155788Z             },
2026-06-04T12:53:14.4156206Z             {
2026-06-04T12:53:14.4156830Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:53:14.4157281Z               "line": 204
2026-06-04T12:53:14.4157689Z             },
2026-06-04T12:53:14.4158117Z             {
2026-06-04T12:53:14.4158756Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T12:53:14.4159232Z               "line": 147
2026-06-04T12:53:14.4159662Z             },
2026-06-04T12:53:14.4160072Z             {
2026-06-04T12:53:14.4160696Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:53:14.4161150Z               "line": 106
2026-06-04T12:53:14.4161566Z             },
2026-06-04T12:53:14.4161986Z             {
2026-06-04T12:53:14.4162566Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T12:53:14.4163013Z               "line": 142
2026-06-04T12:53:14.4163431Z             },
2026-06-04T12:53:14.4164020Z             {
2026-06-04T12:53:14.4164655Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T12:53:14.4165306Z               "line": 139
2026-06-04T12:53:14.4165735Z             },
2026-06-04T12:53:14.4166150Z             {
2026-06-04T12:53:14.4166771Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:53:14.4167204Z               "line": 126
2026-06-04T12:53:14.4167624Z             },
2026-06-04T12:53:14.4168044Z             {
2026-06-04T12:53:14.4168634Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T12:53:14.4169086Z               "line": 135
2026-06-04T12:53:14.4169540Z             }
2026-06-04T12:53:14.4169969Z           ]
2026-06-04T12:53:14.4170386Z         }
2026-06-04T12:53:14.4170809Z       }
2026-06-04T12:53:14.4171227Z     },
2026-06-04T12:53:14.4171634Z     {
2026-06-04T12:53:14.4176739Z       "id": "REQ-HAZARD-WINDOWS-PID-RECYCLE",
2026-06-04T12:53:14.4177720Z       "title": "Windows PID-recycling false positives guarded (5.1)",
2026-06-04T12:53:14.4178230Z       "requiredStages": [
2026-06-04T12:53:14.4178649Z         "impl",
2026-06-04T12:53:14.4179076Z         "unit"
2026-06-04T12:53:14.4179627Z       ],
2026-06-04T12:53:14.4180062Z       "stages": {
2026-06-04T12:53:14.4180487Z         "doc": {
2026-06-04T12:53:14.4180943Z           "complete": false,
2026-06-04T12:53:14.4181393Z           "evidence": []
2026-06-04T12:53:14.4181798Z         },
2026-06-04T12:53:14.4182230Z         "impl": {
2026-06-04T12:53:14.4182685Z           "complete": true,
2026-06-04T12:53:14.4183118Z           "evidence": [
2026-06-04T12:53:14.4183539Z             {
2026-06-04T12:53:14.4184128Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4184577Z               "line": 95
2026-06-04T12:53:14.4184987Z             },
2026-06-04T12:53:14.4185405Z             {
2026-06-04T12:53:14.4186000Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.4186434Z               "line": 96
2026-06-04T12:53:14.4186846Z             }
2026-06-04T12:53:14.4187266Z           ]
2026-06-04T12:53:14.4187690Z         },
2026-06-04T12:53:14.4188107Z         "int": {
2026-06-04T12:53:14.4188588Z           "complete": false,
2026-06-04T12:53:14.4189035Z           "evidence": []
2026-06-04T12:53:14.4189475Z         },
2026-06-04T12:53:14.4189906Z         "unit": {
2026-06-04T12:53:14.4190362Z           "complete": true,
2026-06-04T12:53:14.4190811Z           "evidence": [
2026-06-04T12:53:14.4191220Z             {
2026-06-04T12:53:14.4191818Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4192269Z               "line": 250
2026-06-04T12:53:14.4192683Z             },
2026-06-04T12:53:14.4193106Z             {
2026-06-04T12:53:14.4193682Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T12:53:14.4194130Z               "line": 139
2026-06-04T12:53:14.4194547Z             },
2026-06-04T12:53:14.4194971Z             {
2026-06-04T12:53:14.4195563Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.4196016Z               "line": 384
2026-06-04T12:53:14.4196435Z             },
2026-06-04T12:53:14.4196842Z             {
2026-06-04T12:53:14.4197435Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.4197872Z               "line": 414
2026-06-04T12:53:14.4198292Z             }
2026-06-04T12:53:14.4198711Z           ]
2026-06-04T12:53:14.4199115Z         }
2026-06-04T12:53:14.4199576Z       }
2026-06-04T12:53:14.4199979Z     },
2026-06-04T12:53:14.4200391Z     {
2026-06-04T12:53:14.4200900Z       "id": "REQ-HAZARD-WORKER-PATH",
2026-06-04T12:53:14.4201884Z       "title": "Single source of truth for Worker/Psyche perch location (1.5)",
2026-06-04T12:53:14.4202365Z       "requiredStages": [
2026-06-04T12:53:14.4202782Z         "impl",
2026-06-04T12:53:14.4203203Z         "unit"
2026-06-04T12:53:14.4203610Z       ],
2026-06-04T12:53:14.4204037Z       "stages": {
2026-06-04T12:53:14.4204456Z         "doc": {
2026-06-04T12:53:14.4204924Z           "complete": false,
2026-06-04T12:53:14.4205647Z           "evidence": []
2026-06-04T12:53:14.4206058Z         },
2026-06-04T12:53:14.4206487Z         "impl": {
2026-06-04T12:53:14.4207111Z           "complete": true,
2026-06-04T12:53:14.4207559Z           "evidence": [
2026-06-04T12:53:14.4207971Z             {
2026-06-04T12:53:14.4208574Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.4209016Z               "line": 177
2026-06-04T12:53:14.4209468Z             },
2026-06-04T12:53:14.4209891Z             {
2026-06-04T12:53:14.4210476Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.4210931Z               "line": 222
2026-06-04T12:53:14.4211342Z             },
2026-06-04T12:53:14.4211757Z             {
2026-06-04T12:53:14.4212353Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.4212789Z               "line": 234
2026-06-04T12:53:14.4213205Z             }
2026-06-04T12:53:14.4213608Z           ]
2026-06-04T12:53:14.4214027Z         },
2026-06-04T12:53:14.4214453Z         "int": {
2026-06-04T12:53:14.4214951Z           "complete": false,
2026-06-04T12:53:14.4215404Z           "evidence": []
2026-06-04T12:53:14.4215826Z         },
2026-06-04T12:53:14.4216253Z         "unit": {
2026-06-04T12:53:14.4216705Z           "complete": true,
2026-06-04T12:53:14.4217149Z           "evidence": [
2026-06-04T12:53:14.4217556Z             {
2026-06-04T12:53:14.4218154Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.4218602Z               "line": 370
2026-06-04T12:53:14.4219015Z             },
2026-06-04T12:53:14.4219468Z             {
2026-06-04T12:53:14.4220061Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.4220511Z               "line": 399
2026-06-04T12:53:14.4220919Z             }
2026-06-04T12:53:14.4221338Z           ]
2026-06-04T12:53:14.4221751Z         }
2026-06-04T12:53:14.4222156Z       }
2026-06-04T12:53:14.4222563Z     },
2026-06-04T12:53:14.4222969Z     {
2026-06-04T12:53:14.4223436Z       "id": "REQ-INFRA-1",
2026-06-04T12:53:14.4224410Z       "title": "GitHub issue tracking for v1; tangled.org as migration target",
2026-06-04T12:53:14.4224903Z       "requiredStages": [],
2026-06-04T12:53:14.4225451Z       "stages": {
2026-06-04T12:53:14.4225868Z         "doc": {
2026-06-04T12:53:14.4226331Z           "complete": false,
2026-06-04T12:53:14.4226769Z           "evidence": []
2026-06-04T12:53:14.4227182Z         },
2026-06-04T12:53:14.4227594Z         "impl": {
2026-06-04T12:53:14.4228059Z           "complete": false,
2026-06-04T12:53:14.4228508Z           "evidence": []
2026-06-04T12:53:14.4228918Z         },
2026-06-04T12:53:14.4229385Z         "int": {
2026-06-04T12:53:14.4229846Z           "complete": false,
2026-06-04T12:53:14.4230295Z           "evidence": []
2026-06-04T12:53:14.4230709Z         },
2026-06-04T12:53:14.4231136Z         "unit": {
2026-06-04T12:53:14.4231597Z           "complete": false,
2026-06-04T12:53:14.4232037Z           "evidence": []
2026-06-04T12:53:14.4232450Z         }
2026-06-04T12:53:14.4232866Z       }
2026-06-04T12:53:14.4233277Z     },
2026-06-04T12:53:14.4233682Z     {
2026-06-04T12:53:14.4234134Z       "id": "REQ-INST-1",
2026-06-04T12:53:14.4234991Z       "title": "endpoint ID vs instance split (adapter-agnostic ID)",
2026-06-04T12:53:14.4235465Z       "requiredStages": [],
2026-06-04T12:53:14.4235897Z       "stages": {
2026-06-04T12:53:14.4236313Z         "doc": {
2026-06-04T12:53:14.4236784Z           "complete": false,
2026-06-04T12:53:14.4237219Z           "evidence": []
2026-06-04T12:53:14.4237636Z         },
2026-06-04T12:53:14.4238064Z         "impl": {
2026-06-04T12:53:14.4238519Z           "complete": false,
2026-06-04T12:53:14.4238966Z           "evidence": []
2026-06-04T12:53:14.4239425Z         },
2026-06-04T12:53:14.4239856Z         "int": {
2026-06-04T12:53:14.4240319Z           "complete": false,
2026-06-04T12:53:14.4240780Z           "evidence": []
2026-06-04T12:53:14.4241194Z         },
2026-06-04T12:53:14.4241613Z         "unit": {
2026-06-04T12:53:14.4242255Z           "complete": false,
2026-06-04T12:53:14.4242698Z           "evidence": []
2026-06-04T12:53:14.4243115Z         }
2026-06-04T12:53:14.4243646Z       }
2026-06-04T12:53:14.4244065Z     },
2026-06-04T12:53:14.4244587Z     {
2026-06-04T12:53:14.4245040Z       "id": "REQ-INST-10",
2026-06-04T12:53:14.4246222Z       "title": "Qualified addressing [subnet:]id[@node] + ambiguity forces qualification",
2026-06-04T12:53:14.4246693Z       "requiredStages": [
2026-06-04T12:53:14.4247124Z         "impl",
2026-06-04T12:53:14.4247537Z         "unit"
2026-06-04T12:53:14.4247961Z       ],
2026-06-04T12:53:14.4248391Z       "stages": {
2026-06-04T12:53:14.4248807Z         "doc": {
2026-06-04T12:53:14.4249319Z           "complete": false,
2026-06-04T12:53:14.4249768Z           "evidence": []
2026-06-04T12:53:14.4250190Z         },
2026-06-04T12:53:14.4250612Z         "impl": {
2026-06-04T12:53:14.4251075Z           "complete": true,
2026-06-04T12:53:14.4251521Z           "evidence": [
2026-06-04T12:53:14.4251929Z             {
2026-06-04T12:53:14.4252585Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4253031Z               "line": 358
2026-06-04T12:53:14.4257466Z             },
2026-06-04T12:53:14.4257965Z             {
2026-06-04T12:53:14.4258629Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4259074Z               "line": 413
2026-06-04T12:53:14.4259570Z             },
2026-06-04T12:53:14.4259991Z             {
2026-06-04T12:53:14.4260575Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:53:14.4261022Z               "line": 13
2026-06-04T12:53:14.4261428Z             },
2026-06-04T12:53:14.4261848Z             {
2026-06-04T12:53:14.4262430Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:53:14.4262866Z               "line": 67
2026-06-04T12:53:14.4263285Z             },
2026-06-04T12:53:14.4263694Z             {
2026-06-04T12:53:14.4264252Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T12:53:14.4264819Z               "line": 18
2026-06-04T12:53:14.4265240Z             }
2026-06-04T12:53:14.4265661Z           ]
2026-06-04T12:53:14.4266078Z         },
2026-06-04T12:53:14.4266510Z         "int": {
2026-06-04T12:53:14.4266976Z           "complete": false,
2026-06-04T12:53:14.4267431Z           "evidence": []
2026-06-04T12:53:14.4267842Z         },
2026-06-04T12:53:14.4268268Z         "unit": {
2026-06-04T12:53:14.4268727Z           "complete": true,
2026-06-04T12:53:14.4269196Z           "evidence": [
2026-06-04T12:53:14.4269618Z             {
2026-06-04T12:53:14.4270252Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4270701Z               "line": 557
2026-06-04T12:53:14.4271114Z             },
2026-06-04T12:53:14.4271532Z             {
2026-06-04T12:53:14.4272179Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4272618Z               "line": 585
2026-06-04T12:53:14.4273040Z             },
2026-06-04T12:53:14.4273449Z             {
2026-06-04T12:53:14.4274096Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4274537Z               "line": 593
2026-06-04T12:53:14.4274969Z             },
2026-06-04T12:53:14.4275388Z             {
2026-06-04T12:53:14.4276014Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4276458Z               "line": 606
2026-06-04T12:53:14.4276868Z             },
2026-06-04T12:53:14.4277281Z             {
2026-06-04T12:53:14.4277905Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4278351Z               "line": 619
2026-06-04T12:53:14.4278769Z             },
2026-06-04T12:53:14.4279208Z             {
2026-06-04T12:53:14.4279852Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4280292Z               "line": 635
2026-06-04T12:53:14.4280712Z             },
2026-06-04T12:53:14.4281116Z             {
2026-06-04T12:53:14.4281750Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4282438Z               "line": 864
2026-06-04T12:53:14.4282857Z             },
2026-06-04T12:53:14.4283271Z             {
2026-06-04T12:53:14.4283975Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:53:14.4284421Z               "line": 121
2026-06-04T12:53:14.4284839Z             },
2026-06-04T12:53:14.4285248Z             {
2026-06-04T12:53:14.4285835Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:53:14.4286273Z               "line": 142
2026-06-04T12:53:14.4286689Z             },
2026-06-04T12:53:14.4287095Z             {
2026-06-04T12:53:14.4287683Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:53:14.4288132Z               "line": 150
2026-06-04T12:53:14.4288542Z             },
2026-06-04T12:53:14.4288955Z             {
2026-06-04T12:53:14.4289566Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T12:53:14.4290031Z               "line": 158
2026-06-04T12:53:14.4290446Z             }
2026-06-04T12:53:14.4290859Z           ]
2026-06-04T12:53:14.4291288Z         }
2026-06-04T12:53:14.4291688Z       }
2026-06-04T12:53:14.4292105Z     },
2026-06-04T12:53:14.4292559Z     {
2026-06-04T12:53:14.4293045Z       "id": "REQ-INST-11",
2026-06-04T12:53:14.4294238Z       "title": "spt rename <id> rippled to all instances (collision-checked, 6.5-reconciled)",
2026-06-04T12:53:14.4294716Z       "requiredStages": [
2026-06-04T12:53:14.4295150Z         "impl",
2026-06-04T12:53:14.4295564Z         "unit"
2026-06-04T12:53:14.4295975Z       ],
2026-06-04T12:53:14.4296396Z       "stages": {
2026-06-04T12:53:14.4296820Z         "doc": {
2026-06-04T12:53:14.4297278Z           "complete": false,
2026-06-04T12:53:14.4297729Z           "evidence": []
2026-06-04T12:53:14.4298149Z         },
2026-06-04T12:53:14.4298568Z         "impl": {
2026-06-04T12:53:14.4299031Z           "complete": true,
2026-06-04T12:53:14.4299504Z           "evidence": [
2026-06-04T12:53:14.4299926Z             {
2026-06-04T12:53:14.4300555Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4301026Z               "line": 260
2026-06-04T12:53:14.4301447Z             },
2026-06-04T12:53:14.4301871Z             {
2026-06-04T12:53:14.4302540Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.4302983Z               "line": 243
2026-06-04T12:53:14.4303400Z             },
2026-06-04T12:53:14.4303806Z             {
2026-06-04T12:53:14.4304413Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T12:53:14.4304856Z               "line": 59
2026-06-04T12:53:14.4305267Z             },
2026-06-04T12:53:14.4305686Z             {
2026-06-04T12:53:14.4306207Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.4306654Z               "line": 915
2026-06-04T12:53:14.4307063Z             },
2026-06-04T12:53:14.4307479Z             {
2026-06-04T12:53:14.4308013Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.4308450Z               "line": 1020
2026-06-04T12:53:14.4308865Z             }
2026-06-04T12:53:14.4309318Z           ]
2026-06-04T12:53:14.4309732Z         },
2026-06-04T12:53:14.4310155Z         "int": {
2026-06-04T12:53:14.4310627Z           "complete": false,
2026-06-04T12:53:14.4311086Z           "evidence": []
2026-06-04T12:53:14.4311500Z         },
2026-06-04T12:53:14.4311928Z         "unit": {
2026-06-04T12:53:14.4312378Z           "complete": true,
2026-06-04T12:53:14.4312823Z           "evidence": [
2026-06-04T12:53:14.4313231Z             {
2026-06-04T12:53:14.4313871Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4314315Z               "line": 728
2026-06-04T12:53:14.4314723Z             },
2026-06-04T12:53:14.4315139Z             {
2026-06-04T12:53:14.4315770Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4316221Z               "line": 751
2026-06-04T12:53:14.4316632Z             },
2026-06-04T12:53:14.4317052Z             {
2026-06-04T12:53:14.4317724Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.4318329Z               "line": 356
2026-06-04T12:53:14.4318742Z             },
2026-06-04T12:53:14.4319147Z             {
2026-06-04T12:53:14.4319937Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T12:53:14.4320385Z               "line": 156
2026-06-04T12:53:14.4320816Z             },
2026-06-04T12:53:14.4321230Z             {
2026-06-04T12:53:14.4321823Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T12:53:14.4322269Z               "line": 177
2026-06-04T12:53:14.4322679Z             },
2026-06-04T12:53:14.4323106Z             {
2026-06-04T12:53:14.4323694Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T12:53:14.4324141Z               "line": 209
2026-06-04T12:53:14.4324554Z             },
2026-06-04T12:53:14.4324966Z             {
2026-06-04T12:53:14.4325493Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.4325933Z               "line": 1113
2026-06-04T12:53:14.4326349Z             }
2026-06-04T12:53:14.4326770Z           ]
2026-06-04T12:53:14.4327190Z         }
2026-06-04T12:53:14.4327601Z       }
2026-06-04T12:53:14.4328000Z     },
2026-06-04T12:53:14.4328422Z     {
2026-06-04T12:53:14.4328873Z       "id": "REQ-INST-12",
2026-06-04T12:53:14.4330612Z       "title": "Endpoint visibility per-(endpoint,subnet): excluded semantics, OR-of-defaults + override, gates sync",
2026-06-04T12:53:14.4331110Z       "requiredStages": [
2026-06-04T12:53:14.4331530Z         "impl",
2026-06-04T12:53:14.4331957Z         "unit"
2026-06-04T12:53:14.4332364Z       ],
2026-06-04T12:53:14.4332795Z       "stages": {
2026-06-04T12:53:14.4333216Z         "doc": {
2026-06-04T12:53:14.4333685Z           "complete": false,
2026-06-04T12:53:14.4334142Z           "evidence": []
2026-06-04T12:53:14.4334567Z         },
2026-06-04T12:53:14.4338956Z         "impl": {
2026-06-04T12:53:14.4339611Z           "complete": true,
2026-06-04T12:53:14.4340076Z           "evidence": [
2026-06-04T12:53:14.4340489Z             {
2026-06-04T12:53:14.4341128Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4341612Z               "line": 312
2026-06-04T12:53:14.4342046Z             },
2026-06-04T12:53:14.4342463Z             {
2026-06-04T12:53:14.4343084Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4343534Z               "line": 369
2026-06-04T12:53:14.4343945Z             },
2026-06-04T12:53:14.4344362Z             {
2026-06-04T12:53:14.4345043Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4345485Z               "line": 427
2026-06-04T12:53:14.4345907Z             },
2026-06-04T12:53:14.4346318Z             {
2026-06-04T12:53:14.4346917Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.4347361Z               "line": 87
2026-06-04T12:53:14.4347794Z             },
2026-06-04T12:53:14.4348206Z             {
2026-06-04T12:53:14.4348793Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.4349283Z               "line": 216
2026-06-04T12:53:14.4349715Z             },
2026-06-04T12:53:14.4350137Z             {
2026-06-04T12:53:14.4350765Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:53:14.4351223Z               "line": 132
2026-06-04T12:53:14.4351636Z             }
2026-06-04T12:53:14.4352043Z           ]
2026-06-04T12:53:14.4352462Z         },
2026-06-04T12:53:14.4352876Z         "int": {
2026-06-04T12:53:14.4353347Z           "complete": false,
2026-06-04T12:53:14.4353795Z           "evidence": []
2026-06-04T12:53:14.4354211Z         },
2026-06-04T12:53:14.4354637Z         "unit": {
2026-06-04T12:53:14.4355090Z           "complete": true,
2026-06-04T12:53:14.4355528Z           "evidence": [
2026-06-04T12:53:14.4355934Z             {
2026-06-04T12:53:14.4356573Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4357014Z               "line": 786
2026-06-04T12:53:14.4357439Z             },
2026-06-04T12:53:14.4357854Z             {
2026-06-04T12:53:14.4358481Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4359231Z               "line": 803
2026-06-04T12:53:14.4359644Z             },
2026-06-04T12:53:14.4360185Z             {
2026-06-04T12:53:14.4360817Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4361277Z               "line": 834
2026-06-04T12:53:14.4361698Z             },
2026-06-04T12:53:14.4362104Z             {
2026-06-04T12:53:14.4362704Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.4363146Z               "line": 350
2026-06-04T12:53:14.4363571Z             },
2026-06-04T12:53:14.4363982Z             {
2026-06-04T12:53:14.4364629Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:53:14.4365085Z               "line": 169
2026-06-04T12:53:14.4365502Z             },
2026-06-04T12:53:14.4365918Z             {
2026-06-04T12:53:14.4366547Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:53:14.4366993Z               "line": 181
2026-06-04T12:53:14.4367416Z             },
2026-06-04T12:53:14.4367835Z             {
2026-06-04T12:53:14.4368472Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:53:14.4368923Z               "line": 198
2026-06-04T12:53:14.4369388Z             }
2026-06-04T12:53:14.4369807Z           ]
2026-06-04T12:53:14.4370224Z         }
2026-06-04T12:53:14.4370629Z       }
2026-06-04T12:53:14.4371043Z     },
2026-06-04T12:53:14.4371453Z     {
2026-06-04T12:53:14.4371910Z       "id": "REQ-INST-13",
2026-06-04T12:53:14.4372887Z       "title": "Subnet-exclusive sync + per-endpoint subnet-membership list",
2026-06-04T12:53:14.4373349Z       "requiredStages": [
2026-06-04T12:53:14.4373777Z         "impl",
2026-06-04T12:53:14.4374187Z         "unit"
2026-06-04T12:53:14.4374600Z       ],
2026-06-04T12:53:14.4375027Z       "stages": {
2026-06-04T12:53:14.4375542Z         "doc": {
2026-06-04T12:53:14.4376014Z           "complete": false,
2026-06-04T12:53:14.4376459Z           "evidence": []
2026-06-04T12:53:14.4376890Z         },
2026-06-04T12:53:14.4377308Z         "impl": {
2026-06-04T12:53:14.4377770Z           "complete": true,
2026-06-04T12:53:14.4378218Z           "evidence": [
2026-06-04T12:53:14.4378628Z             {
2026-06-04T12:53:14.4379246Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.4379686Z               "line": 94
2026-06-04T12:53:14.4380110Z             },
2026-06-04T12:53:14.4380516Z             {
2026-06-04T12:53:14.4381168Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:53:14.4381618Z               "line": 155
2026-06-04T12:53:14.4382030Z             }
2026-06-04T12:53:14.4382447Z           ]
2026-06-04T12:53:14.4382851Z         },
2026-06-04T12:53:14.4383277Z         "int": {
2026-06-04T12:53:14.4383736Z           "complete": false,
2026-06-04T12:53:14.4384202Z           "evidence": []
2026-06-04T12:53:14.4384619Z         },
2026-06-04T12:53:14.4385037Z         "unit": {
2026-06-04T12:53:14.4385496Z           "complete": true,
2026-06-04T12:53:14.4385942Z           "evidence": [
2026-06-04T12:53:14.4386360Z             {
2026-06-04T12:53:14.4386995Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:53:14.4387454Z               "line": 221
2026-06-04T12:53:14.4387875Z             },
2026-06-04T12:53:14.4388286Z             {
2026-06-04T12:53:14.4388922Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T12:53:14.4389400Z               "line": 233
2026-06-04T12:53:14.4389819Z             }
2026-06-04T12:53:14.4390236Z           ]
2026-06-04T12:53:14.4390645Z         }
2026-06-04T12:53:14.4391061Z       }
2026-06-04T12:53:14.4391463Z     },
2026-06-04T12:53:14.4391873Z     {
2026-06-04T12:53:14.4392321Z       "id": "REQ-INST-14",
2026-06-04T12:53:14.4394528Z       "title": "Resource advertisement (subnet resource registry): free-text blurb, both-authored, registry projection, visibility/whitelist-gated",
2026-06-04T12:53:14.4395024Z       "requiredStages": [],
2026-06-04T12:53:14.4395441Z       "stages": {
2026-06-04T12:53:14.4396019Z         "doc": {
2026-06-04T12:53:14.4396478Z           "complete": false,
2026-06-04T12:53:14.4397048Z           "evidence": []
2026-06-04T12:53:14.4397461Z         },
2026-06-04T12:53:14.4397887Z         "impl": {
2026-06-04T12:53:14.4398356Z           "complete": false,
2026-06-04T12:53:14.4398801Z           "evidence": []
2026-06-04T12:53:14.4399259Z         },
2026-06-04T12:53:14.4399673Z         "int": {
2026-06-04T12:53:14.4400136Z           "complete": false,
2026-06-04T12:53:14.4400579Z           "evidence": []
2026-06-04T12:53:14.4400995Z         },
2026-06-04T12:53:14.4401416Z         "unit": {
2026-06-04T12:53:14.4401871Z           "complete": false,
2026-06-04T12:53:14.4402314Z           "evidence": []
2026-06-04T12:53:14.4402720Z         }
2026-06-04T12:53:14.4403136Z       }
2026-06-04T12:53:14.4403540Z     },
2026-06-04T12:53:14.4403953Z     {
2026-06-04T12:53:14.4404402Z       "id": "REQ-INST-15",
2026-06-04T12:53:14.4408784Z       "title": "Immutable home subnet (assigned at creation: auto-if-one/ask-if-many) + spt fork (cross-subnet clone to a new identity, copy-then-diverge, not re-home); adapter chosen at creation from registered hostable adapters, changed only via launch/resume-under-new (ADR-0010)",
2026-06-04T12:53:14.4409335Z       "requiredStages": [],
2026-06-04T12:53:14.4409761Z       "stages": {
2026-06-04T12:53:14.4410182Z         "doc": {
2026-06-04T12:53:14.4410641Z           "complete": false,
2026-06-04T12:53:14.4411087Z           "evidence": []
2026-06-04T12:53:14.4411502Z         },
2026-06-04T12:53:14.4411913Z         "impl": {
2026-06-04T12:53:14.4412373Z           "complete": false,
2026-06-04T12:53:14.4412814Z           "evidence": []
2026-06-04T12:53:14.4413231Z         },
2026-06-04T12:53:14.4413640Z         "int": {
2026-06-04T12:53:14.4414099Z           "complete": false,
2026-06-04T12:53:14.4414549Z           "evidence": []
2026-06-04T12:53:14.4414953Z         },
2026-06-04T12:53:14.4415379Z         "unit": {
2026-06-04T12:53:14.4415893Z           "complete": false,
2026-06-04T12:53:14.4416339Z           "evidence": []
2026-06-04T12:53:14.4416746Z         }
2026-06-04T12:53:14.4417177Z       }
2026-06-04T12:53:14.4417591Z     },
2026-06-04T12:53:14.4418000Z     {
2026-06-04T12:53:14.4418461Z       "id": "REQ-INST-2",
2026-06-04T12:53:14.4419071Z       "title": "Per-node files, synced Psyche mind",
2026-06-04T12:53:14.4419579Z       "requiredStages": [
2026-06-04T12:53:14.4423861Z         "impl",
2026-06-04T12:53:14.4424385Z         "unit"
2026-06-04T12:53:14.4424810Z       ],
2026-06-04T12:53:14.4425232Z       "stages": {
2026-06-04T12:53:14.4425650Z         "doc": {
2026-06-04T12:53:14.4426112Z           "complete": false,
2026-06-04T12:53:14.4426559Z           "evidence": []
2026-06-04T12:53:14.4426968Z         },
2026-06-04T12:53:14.4427394Z         "impl": {
2026-06-04T12:53:14.4427860Z           "complete": true,
2026-06-04T12:53:14.4428289Z           "evidence": [
2026-06-04T12:53:14.4428700Z             {
2026-06-04T12:53:14.4429445Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.4429892Z               "line": 86
2026-06-04T12:53:14.4430316Z             },
2026-06-04T12:53:14.4430731Z             {
2026-06-04T12:53:14.4431316Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:53:14.4431746Z               "line": 28
2026-06-04T12:53:14.4432162Z             },
2026-06-04T12:53:14.4432569Z             {
2026-06-04T12:53:14.4433158Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:53:14.4433592Z               "line": 74
2026-06-04T12:53:14.4434021Z             },
2026-06-04T12:53:14.4434434Z             {
2026-06-04T12:53:14.4435007Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:53:14.4435441Z               "line": 96
2026-06-04T12:53:14.4435844Z             },
2026-06-04T12:53:14.4436252Z             {
2026-06-04T12:53:14.4436823Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:53:14.4437262Z               "line": 81
2026-06-04T12:53:14.4437917Z             },
2026-06-04T12:53:14.4438323Z             {
2026-06-04T12:53:14.4438920Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T12:53:14.4439530Z               "line": 118
2026-06-04T12:53:14.4439954Z             }
2026-06-04T12:53:14.4440364Z           ]
2026-06-04T12:53:14.4440777Z         },
2026-06-04T12:53:14.4441198Z         "int": {
2026-06-04T12:53:14.4441655Z           "complete": false,
2026-06-04T12:53:14.4442104Z           "evidence": []
2026-06-04T12:53:14.4442510Z         },
2026-06-04T12:53:14.4442932Z         "unit": {
2026-06-04T12:53:14.4443375Z           "complete": true,
2026-06-04T12:53:14.4443813Z           "evidence": [
2026-06-04T12:53:14.4444236Z             {
2026-06-04T12:53:14.4444810Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T12:53:14.4445252Z               "line": 203
2026-06-04T12:53:14.4445656Z             },
2026-06-04T12:53:14.4446065Z             {
2026-06-04T12:53:14.4446641Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:53:14.4447100Z               "line": 232
2026-06-04T12:53:14.4447511Z             }
2026-06-04T12:53:14.4447924Z           ]
2026-06-04T12:53:14.4448332Z         }
2026-06-04T12:53:14.4448734Z       }
2026-06-04T12:53:14.4449147Z     },
2026-06-04T12:53:14.4449587Z     {
2026-06-04T12:53:14.4450042Z       "id": "REQ-INST-3",
2026-06-04T12:53:14.4450811Z       "title": "Dormant (warm) / suspended (cold) resting states",
2026-06-04T12:53:14.4451271Z       "requiredStages": [
2026-06-04T12:53:14.4451692Z         "doc",
2026-06-04T12:53:14.4452112Z         "impl",
2026-06-04T12:53:14.4452529Z         "unit"
2026-06-04T12:53:14.4452934Z       ],
2026-06-04T12:53:14.4453354Z       "stages": {
2026-06-04T12:53:14.4453773Z         "doc": {
2026-06-04T12:53:14.4454218Z           "complete": true,
2026-06-04T12:53:14.4454660Z           "evidence": [
2026-06-04T12:53:14.4455064Z             {
2026-06-04T12:53:14.4455611Z               "path": "docs/DORMANCY-BUDGET.md",
2026-06-04T12:53:14.4456043Z               "line": 3
2026-06-04T12:53:14.4456458Z             }
2026-06-04T12:53:14.4456870Z           ]
2026-06-04T12:53:14.4457279Z         },
2026-06-04T12:53:14.4457702Z         "impl": {
2026-06-04T12:53:14.4458142Z           "complete": true,
2026-06-04T12:53:14.4458580Z           "evidence": [
2026-06-04T12:53:14.4458987Z             {
2026-06-04T12:53:14.4459624Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:53:14.4460059Z               "line": 70
2026-06-04T12:53:14.4460462Z             },
2026-06-04T12:53:14.4460871Z             {
2026-06-04T12:53:14.4461481Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:53:14.4461916Z               "line": 385
2026-06-04T12:53:14.4462322Z             },
2026-06-04T12:53:14.4462728Z             {
2026-06-04T12:53:14.4463359Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.4463793Z               "line": 197
2026-06-04T12:53:14.4464207Z             },
2026-06-04T12:53:14.4464621Z             {
2026-06-04T12:53:14.4465244Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.4465699Z               "line": 272
2026-06-04T12:53:14.4466104Z             },
2026-06-04T12:53:14.4466517Z             {
2026-06-04T12:53:14.4467134Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.4467579Z               "line": 293
2026-06-04T12:53:14.4467984Z             },
2026-06-04T12:53:14.4468397Z             {
2026-06-04T12:53:14.4469029Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T12:53:14.4469497Z               "line": 234
2026-06-04T12:53:14.4469914Z             },
2026-06-04T12:53:14.4470316Z             {
2026-06-04T12:53:14.4470980Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:53:14.4471413Z               "line": 147
2026-06-04T12:53:14.4471826Z             },
2026-06-04T12:53:14.4472239Z             {
2026-06-04T12:53:14.4472894Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:53:14.4473482Z               "line": 214
2026-06-04T12:53:14.4473890Z             },
2026-06-04T12:53:14.4474425Z             {
2026-06-04T12:53:14.4475035Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4475474Z               "line": 44
2026-06-04T12:53:14.4475897Z             },
2026-06-04T12:53:14.4476299Z             {
2026-06-04T12:53:14.4476917Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4477352Z               "line": 113
2026-06-04T12:53:14.4477770Z             },
2026-06-04T12:53:14.4478174Z             {
2026-06-04T12:53:14.4478787Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4479264Z               "line": 151
2026-06-04T12:53:14.4479674Z             },
2026-06-04T12:53:14.4480081Z             {
2026-06-04T12:53:14.4480683Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4481126Z               "line": 167
2026-06-04T12:53:14.4481550Z             },
2026-06-04T12:53:14.4481962Z             {
2026-06-04T12:53:14.4482578Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4483024Z               "line": 177
2026-06-04T12:53:14.4483444Z             },
2026-06-04T12:53:14.4483848Z             {
2026-06-04T12:53:14.4484457Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4484887Z               "line": 209
2026-06-04T12:53:14.4485300Z             },
2026-06-04T12:53:14.4485719Z             {
2026-06-04T12:53:14.4486316Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4486757Z               "line": 282
2026-06-04T12:53:14.4487165Z             },
2026-06-04T12:53:14.4487572Z             {
2026-06-04T12:53:14.4488184Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4488619Z               "line": 306
2026-06-04T12:53:14.4489030Z             },
2026-06-04T12:53:14.4489461Z             {
2026-06-04T12:53:14.4490079Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4490524Z               "line": 346
2026-06-04T12:53:14.4490934Z             },
2026-06-04T12:53:14.4491357Z             {
2026-06-04T12:53:14.4491962Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4492407Z               "line": 361
2026-06-04T12:53:14.4492814Z             },
2026-06-04T12:53:14.4493226Z             {
2026-06-04T12:53:14.4493837Z               "path": "crates/spt-daemon/tests/budget.rs",
2026-06-04T12:53:14.4494268Z               "line": 37
2026-06-04T12:53:14.4494677Z             },
2026-06-04T12:53:14.4495086Z             {
2026-06-04T12:53:14.4495712Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4496139Z               "line": 62
2026-06-04T12:53:14.4496553Z             },
2026-06-04T12:53:14.4496953Z             {
2026-06-04T12:53:14.4497528Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.4497971Z               "line": 156
2026-06-04T12:53:14.4498397Z             },
2026-06-04T12:53:14.4498816Z             {
2026-06-04T12:53:14.4503118Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.4503684Z               "line": 332
2026-06-04T12:53:14.4504101Z             }
2026-06-04T12:53:14.4504516Z           ]
2026-06-04T12:53:14.4504927Z         },
2026-06-04T12:53:14.4505339Z         "int": {
2026-06-04T12:53:14.4505804Z           "complete": false,
2026-06-04T12:53:14.4506243Z           "evidence": []
2026-06-04T12:53:14.4506654Z         },
2026-06-04T12:53:14.4507067Z         "unit": {
2026-06-04T12:53:14.4507530Z           "complete": true,
2026-06-04T12:53:14.4507970Z           "evidence": [
2026-06-04T12:53:14.4508374Z             {
2026-06-04T12:53:14.4508996Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:53:14.4509510Z               "line": 292
2026-06-04T12:53:14.4509937Z             },
2026-06-04T12:53:14.4510343Z             {
2026-06-04T12:53:14.4510984Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.4511701Z               "line": 610
2026-06-04T12:53:14.4512122Z             },
2026-06-04T12:53:14.4512658Z             {
2026-06-04T12:53:14.4513289Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.4513737Z               "line": 661
2026-06-04T12:53:14.4514145Z             },
2026-06-04T12:53:14.4514555Z             {
2026-06-04T12:53:14.4515219Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:53:14.4515657Z               "line": 365
2026-06-04T12:53:14.4516068Z             },
2026-06-04T12:53:14.4516470Z             {
2026-06-04T12:53:14.4517132Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:53:14.4517566Z               "line": 412
2026-06-04T12:53:14.4517978Z             },
2026-06-04T12:53:14.4518390Z             {
2026-06-04T12:53:14.4518997Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4519472Z               "line": 372
2026-06-04T12:53:14.4519899Z             },
2026-06-04T12:53:14.4520310Z             {
2026-06-04T12:53:14.4520917Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4521375Z               "line": 401
2026-06-04T12:53:14.4521788Z             },
2026-06-04T12:53:14.4522192Z             {
2026-06-04T12:53:14.4522798Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4523234Z               "line": 434
2026-06-04T12:53:14.4523651Z             },
2026-06-04T12:53:14.4524060Z             {
2026-06-04T12:53:14.4524671Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4525113Z               "line": 542
2026-06-04T12:53:14.4525518Z             },
2026-06-04T12:53:14.4525929Z             {
2026-06-04T12:53:14.4526540Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4526980Z               "line": 621
2026-06-04T12:53:14.4527392Z             },
2026-06-04T12:53:14.4527797Z             {
2026-06-04T12:53:14.4528410Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4528854Z               "line": 635
2026-06-04T12:53:14.4529303Z             },
2026-06-04T12:53:14.4529722Z             {
2026-06-04T12:53:14.4530351Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4530796Z               "line": 566
2026-06-04T12:53:14.4531210Z             },
2026-06-04T12:53:14.4531623Z             {
2026-06-04T12:53:14.4532191Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.4532632Z               "line": 327
2026-06-04T12:53:14.4533036Z             },
2026-06-04T12:53:14.4533444Z             {
2026-06-04T12:53:14.4533973Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.4534410Z               "line": 1116
2026-06-04T12:53:14.4534857Z             }
2026-06-04T12:53:14.4535258Z           ]
2026-06-04T12:53:14.4535666Z         }
2026-06-04T12:53:14.4536063Z       }
2026-06-04T12:53:14.4536462Z     },
2026-06-04T12:53:14.4536871Z     {
2026-06-04T12:53:14.4537321Z       "id": "REQ-INST-4",
2026-06-04T12:53:14.4538253Z       "title": "active to dormant/suspended fires a transition echo commune",
2026-06-04T12:53:14.4538724Z       "requiredStages": [
2026-06-04T12:53:14.4539144Z         "impl",
2026-06-04T12:53:14.4539588Z         "unit"
2026-06-04T12:53:14.4540003Z       ],
2026-06-04T12:53:14.4540426Z       "stages": {
2026-06-04T12:53:14.4540837Z         "doc": {
2026-06-04T12:53:14.4541294Z           "complete": false,
2026-06-04T12:53:14.4541731Z           "evidence": []
2026-06-04T12:53:14.4542140Z         },
2026-06-04T12:53:14.4542555Z         "impl": {
2026-06-04T12:53:14.4543010Z           "complete": true,
2026-06-04T12:53:14.4543447Z           "evidence": [
2026-06-04T12:53:14.4543851Z             {
2026-06-04T12:53:14.4544481Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.4544914Z               "line": 273
2026-06-04T12:53:14.4545325Z             },
2026-06-04T12:53:14.4545726Z             {
2026-06-04T12:53:14.4546506Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4546946Z               "line": 201
2026-06-04T12:53:14.4547486Z             },
2026-06-04T12:53:14.4547900Z             {
2026-06-04T12:53:14.4548515Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4548957Z               "line": 233
2026-06-04T12:53:14.4549408Z             },
2026-06-04T12:53:14.4549836Z             {
2026-06-04T12:53:14.4550459Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4550892Z               "line": 269
2026-06-04T12:53:14.4551304Z             }
2026-06-04T12:53:14.4551704Z           ]
2026-06-04T12:53:14.4552120Z         },
2026-06-04T12:53:14.4552527Z         "int": {
2026-06-04T12:53:14.4552984Z           "complete": false,
2026-06-04T12:53:14.4553424Z           "evidence": []
2026-06-04T12:53:14.4553831Z         },
2026-06-04T12:53:14.4554250Z         "unit": {
2026-06-04T12:53:14.4554696Z           "complete": true,
2026-06-04T12:53:14.4555144Z           "evidence": [
2026-06-04T12:53:14.4555547Z             {
2026-06-04T12:53:14.4556187Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.4556643Z               "line": 656
2026-06-04T12:53:14.4557054Z             },
2026-06-04T12:53:14.4557465Z             {
2026-06-04T12:53:14.4558075Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4558513Z               "line": 452
2026-06-04T12:53:14.4558916Z             },
2026-06-04T12:53:14.4559362Z             {
2026-06-04T12:53:14.4559987Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4560420Z               "line": 517
2026-06-04T12:53:14.4560838Z             },
2026-06-04T12:53:14.4561237Z             {
2026-06-04T12:53:14.4561851Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T12:53:14.4562287Z               "line": 584
2026-06-04T12:53:14.4562692Z             }
2026-06-04T12:53:14.4563103Z           ]
2026-06-04T12:53:14.4563505Z         }
2026-06-04T12:53:14.4563924Z       }
2026-06-04T12:53:14.4564317Z     },
2026-06-04T12:53:14.4564718Z     {
2026-06-04T12:53:14.4565168Z       "id": "REQ-INST-5",
2026-06-04T12:53:14.4566132Z       "title": "Two-tier context sync (live to all, project to same-project)",
2026-06-04T12:53:14.4566603Z       "requiredStages": [
2026-06-04T12:53:14.4567017Z         "impl",
2026-06-04T12:53:14.4567427Z         "unit"
2026-06-04T12:53:14.4567834Z       ],
2026-06-04T12:53:14.4568257Z       "stages": {
2026-06-04T12:53:14.4568669Z         "doc": {
2026-06-04T12:53:14.4569131Z           "complete": false,
2026-06-04T12:53:14.4569602Z           "evidence": []
2026-06-04T12:53:14.4570010Z         },
2026-06-04T12:53:14.4570424Z         "impl": {
2026-06-04T12:53:14.4570871Z           "complete": true,
2026-06-04T12:53:14.4571317Z           "evidence": [
2026-06-04T12:53:14.4571722Z             {
2026-06-04T12:53:14.4572360Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T12:53:14.4572795Z               "line": 39
2026-06-04T12:53:14.4573214Z             },
2026-06-04T12:53:14.4573621Z             {
2026-06-04T12:53:14.4574279Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.4574724Z               "line": 68
2026-06-04T12:53:14.4575138Z             },
2026-06-04T12:53:14.4575548Z             {
2026-06-04T12:53:14.4576129Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.4576556Z               "line": 93
2026-06-04T12:53:14.4576977Z             },
2026-06-04T12:53:14.4577384Z             {
2026-06-04T12:53:14.4577968Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.4578414Z               "line": 160
2026-06-04T12:53:14.4582650Z             },
2026-06-04T12:53:14.4583167Z             {
2026-06-04T12:53:14.4583768Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.4584216Z               "line": 271
2026-06-04T12:53:14.4584620Z             }
2026-06-04T12:53:14.4585034Z           ]
2026-06-04T12:53:14.4585740Z         },
2026-06-04T12:53:14.4586163Z         "int": {
2026-06-04T12:53:14.4586621Z           "complete": true,
2026-06-04T12:53:14.4587259Z           "evidence": [
2026-06-04T12:53:14.4587922Z             {
2026-06-04T12:53:14.4588749Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:53:14.4589433Z               "line": 142
2026-06-04T12:53:14.4589963Z             },
2026-06-04T12:53:14.4590842Z             {
2026-06-04T12:53:14.4592010Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T12:53:14.4592504Z               "line": 102
2026-06-04T12:53:14.4592961Z             }
2026-06-04T12:53:14.4593391Z           ]
2026-06-04T12:53:14.4593833Z         },
2026-06-04T12:53:14.4594273Z         "unit": {
2026-06-04T12:53:14.4594741Z           "complete": true,
2026-06-04T12:53:14.4595206Z           "evidence": [
2026-06-04T12:53:14.4595633Z             {
2026-06-04T12:53:14.4596247Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.4596738Z               "line": 461
2026-06-04T12:53:14.4597179Z             },
2026-06-04T12:53:14.4597606Z             {
2026-06-04T12:53:14.4598267Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.4598746Z               "line": 495
2026-06-04T12:53:14.4599245Z             },
2026-06-04T12:53:14.4599835Z             {
2026-06-04T12:53:14.4600441Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:53:14.4600894Z               "line": 199
2026-06-04T12:53:14.4601309Z             }
2026-06-04T12:53:14.4601714Z           ]
2026-06-04T12:53:14.4602129Z         }
2026-06-04T12:53:14.4602536Z       }
2026-06-04T12:53:14.4602953Z     },
2026-06-04T12:53:14.4603358Z     {
2026-06-04T12:53:14.4603817Z       "id": "REQ-INST-6",
2026-06-04T12:53:14.4604825Z       "title": "Deferred messages not delivered to dormant/suspended instances",
2026-06-04T12:53:14.4605301Z       "requiredStages": [],
2026-06-04T12:53:14.4605733Z       "stages": {
2026-06-04T12:53:14.4606153Z         "doc": {
2026-06-04T12:53:14.4606632Z           "complete": false,
2026-06-04T12:53:14.4607072Z           "evidence": []
2026-06-04T12:53:14.4607504Z         },
2026-06-04T12:53:14.4607935Z         "impl": {
2026-06-04T12:53:14.4608390Z           "complete": false,
2026-06-04T12:53:14.4608844Z           "evidence": []
2026-06-04T12:53:14.4609291Z         },
2026-06-04T12:53:14.4609907Z         "int": {
2026-06-04T12:53:14.4610381Z           "complete": false,
2026-06-04T12:53:14.4610844Z           "evidence": []
2026-06-04T12:53:14.4611273Z         },
2026-06-04T12:53:14.4611713Z         "unit": {
2026-06-04T12:53:14.4612187Z           "complete": false,
2026-06-04T12:53:14.4612645Z           "evidence": []
2026-06-04T12:53:14.4613075Z         }
2026-06-04T12:53:14.4613494Z       }
2026-06-04T12:53:14.4613924Z     },
2026-06-04T12:53:14.4614351Z     {
2026-06-04T12:53:14.4614816Z       "id": "REQ-INST-7",
2026-06-04T12:53:14.4615574Z       "title": "Subnet registry + bare-id resolution policy",
2026-06-04T12:53:14.4616066Z       "requiredStages": [
2026-06-04T12:53:14.4616510Z         "impl",
2026-06-04T12:53:14.4617091Z         "unit"
2026-06-04T12:53:14.4617532Z       ],
2026-06-04T12:53:14.4617965Z       "stages": {
2026-06-04T12:53:14.4618380Z         "doc": {
2026-06-04T12:53:14.4618838Z           "complete": false,
2026-06-04T12:53:14.4619308Z           "evidence": []
2026-06-04T12:53:14.4619732Z         },
2026-06-04T12:53:14.4620153Z         "impl": {
2026-06-04T12:53:14.4620611Z           "complete": true,
2026-06-04T12:53:14.4621057Z           "evidence": [
2026-06-04T12:53:14.4621465Z             {
2026-06-04T12:53:14.4622101Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:53:14.4622549Z               "line": 361
2026-06-04T12:53:14.4623170Z             },
2026-06-04T12:53:14.4623762Z             {
2026-06-04T12:53:14.4624541Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T12:53:14.4625035Z               "line": 40
2026-06-04T12:53:14.4625522Z             },
2026-06-04T12:53:14.4626355Z             {
2026-06-04T12:53:14.4627138Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:53:14.4627846Z               "line": 27
2026-06-04T12:53:14.4628311Z             },
2026-06-04T12:53:14.4628780Z             {
2026-06-04T12:53:14.4629560Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:53:14.4630063Z               "line": 120
2026-06-04T12:53:14.4630502Z             },
2026-06-04T12:53:14.4631006Z             {
2026-06-04T12:53:14.4631743Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:53:14.4632259Z               "line": 197
2026-06-04T12:53:14.4632748Z             },
2026-06-04T12:53:14.4633217Z             {
2026-06-04T12:53:14.4633928Z               "path": "crates/spt-net/src/net/ndjson.rs",
2026-06-04T12:53:14.4634412Z               "line": 56
2026-06-04T12:53:14.4634864Z             },
2026-06-04T12:53:14.4635317Z             {
2026-06-04T12:53:14.4636074Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4636570Z               "line": 41
2026-06-04T12:53:14.4637058Z             },
2026-06-04T12:53:14.4637513Z             {
2026-06-04T12:53:14.4638266Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:53:14.4638778Z               "line": 27
2026-06-04T12:53:14.4639308Z             },
2026-06-04T12:53:14.4639829Z             {
2026-06-04T12:53:14.4640705Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:53:14.4641213Z               "line": 59
2026-06-04T12:53:14.4641826Z             },
2026-06-04T12:53:14.4642360Z             {
2026-06-04T12:53:14.4643176Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:53:14.4643698Z               "line": 68
2026-06-04T12:53:14.4644286Z             },
2026-06-04T12:53:14.4644701Z             {
2026-06-04T12:53:14.4645335Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T12:53:14.4645779Z               "line": 129
2026-06-04T12:53:14.4646220Z             }
2026-06-04T12:53:14.4646709Z           ]
2026-06-04T12:53:14.4647428Z         },
2026-06-04T12:53:14.4647880Z         "int": {
2026-06-04T12:53:14.4648345Z           "complete": true,
2026-06-04T12:53:14.4648797Z           "evidence": [
2026-06-04T12:53:14.4649322Z             {
2026-06-04T12:53:14.4650009Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T12:53:14.4650462Z               "line": 102
2026-06-04T12:53:14.4650875Z             }
2026-06-04T12:53:14.4651300Z           ]
2026-06-04T12:53:14.4651709Z         },
2026-06-04T12:53:14.4652141Z         "unit": {
2026-06-04T12:53:14.4652599Z           "complete": true,
2026-06-04T12:53:14.4653049Z           "evidence": [
2026-06-04T12:53:14.4653476Z             {
2026-06-04T12:53:14.4654152Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:53:14.4654603Z               "line": 342
2026-06-04T12:53:14.4655018Z             },
2026-06-04T12:53:14.4655440Z             {
2026-06-04T12:53:14.4656127Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T12:53:14.4656584Z               "line": 458
2026-06-04T12:53:14.4657020Z             },
2026-06-04T12:53:14.4657575Z             {
2026-06-04T12:53:14.4658277Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-04T12:53:14.4658733Z               "line": 83
2026-06-04T12:53:14.4659202Z             },
2026-06-04T12:53:14.4659791Z             {
2026-06-04T12:53:14.4660433Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4660891Z               "line": 482
2026-06-04T12:53:14.4661312Z             },
2026-06-04T12:53:14.4661737Z             {
2026-06-04T12:53:14.4662377Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4669106Z               "line": 493
2026-06-04T12:53:14.4669781Z             },
2026-06-04T12:53:14.4670214Z             {
2026-06-04T12:53:14.4670874Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4671806Z               "line": 502
2026-06-04T12:53:14.4672228Z             },
2026-06-04T12:53:14.4672648Z             {
2026-06-04T12:53:14.4673500Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:53:14.4673958Z               "line": 90
2026-06-04T12:53:14.4674384Z             },
2026-06-04T12:53:14.4674792Z             {
2026-06-04T12:53:14.4675450Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:53:14.4675893Z               "line": 105
2026-06-04T12:53:14.4676323Z             },
2026-06-04T12:53:14.4676728Z             {
2026-06-04T12:53:14.4677381Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T12:53:14.4677830Z               "line": 131
2026-06-04T12:53:14.4678251Z             }
2026-06-04T12:53:14.4678671Z           ]
2026-06-04T12:53:14.4679082Z         }
2026-06-04T12:53:14.4679551Z       }
2026-06-04T12:53:14.4679961Z     },
2026-06-04T12:53:14.4680371Z     {
2026-06-04T12:53:14.4680836Z       "id": "REQ-INST-8",
2026-06-04T12:53:14.4681648Z       "title": "Remote-control mode distinct from local operation",
2026-06-04T12:53:14.4682137Z       "requiredStages": [
2026-06-04T12:53:14.4682561Z         "impl",
2026-06-04T12:53:14.4682989Z         "unit"
2026-06-04T12:53:14.4683404Z       ],
2026-06-04T12:53:14.4683836Z       "stages": {
2026-06-04T12:53:14.4684264Z         "doc": {
2026-06-04T12:53:14.4684716Z           "complete": false,
2026-06-04T12:53:14.4685167Z           "evidence": []
2026-06-04T12:53:14.4685580Z         },
2026-06-04T12:53:14.4686003Z         "impl": {
2026-06-04T12:53:14.4686455Z           "complete": true,
2026-06-04T12:53:14.4686904Z           "evidence": [
2026-06-04T12:53:14.4687327Z             {
2026-06-04T12:53:14.4687945Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:53:14.4688387Z               "line": 98
2026-06-04T12:53:14.4688795Z             },
2026-06-04T12:53:14.4689249Z             {
2026-06-04T12:53:14.4689860Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:53:14.4690326Z               "line": 202
2026-06-04T12:53:14.4690754Z             },
2026-06-04T12:53:14.4691169Z             {
2026-06-04T12:53:14.4691787Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:53:14.4692231Z               "line": 220
2026-06-04T12:53:14.4692656Z             },
2026-06-04T12:53:14.4693060Z             {
2026-06-04T12:53:14.4693691Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T12:53:14.4694268Z               "line": 35
2026-06-04T12:53:14.4694694Z             }
2026-06-04T12:53:14.4695593Z           ]
2026-06-04T12:53:14.4696058Z         },
2026-06-04T12:53:14.4696556Z         "int": {
2026-06-04T12:53:14.4697072Z           "complete": true,
2026-06-04T12:53:14.4697875Z           "evidence": [
2026-06-04T12:53:14.4698361Z             {
2026-06-04T12:53:14.4699101Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:53:14.4699831Z               "line": 375
2026-06-04T12:53:14.4700307Z             }
2026-06-04T12:53:14.4700743Z           ]
2026-06-04T12:53:14.4701156Z         },
2026-06-04T12:53:14.4701594Z         "unit": {
2026-06-04T12:53:14.4702075Z           "complete": true,
2026-06-04T12:53:14.4702519Z           "evidence": [
2026-06-04T12:53:14.4702944Z             {
2026-06-04T12:53:14.4703577Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T12:53:14.4704031Z               "line": 172
2026-06-04T12:53:14.4704451Z             },
2026-06-04T12:53:14.4704870Z             {
2026-06-04T12:53:14.4705499Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T12:53:14.4705945Z               "line": 226
2026-06-04T12:53:14.4706369Z             },
2026-06-04T12:53:14.4706779Z             {
2026-06-04T12:53:14.4707407Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T12:53:14.4707857Z               "line": 70
2026-06-04T12:53:14.4708269Z             },
2026-06-04T12:53:14.4708693Z             {
2026-06-04T12:53:14.4709339Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T12:53:14.4710046Z               "line": 101
2026-06-04T12:53:14.4710609Z             }
2026-06-04T12:53:14.4711030Z           ]
2026-06-04T12:53:14.4711455Z         }
2026-06-04T12:53:14.4711863Z       }
2026-06-04T12:53:14.4712283Z     },
2026-06-04T12:53:14.4712685Z     {
2026-06-04T12:53:14.4713151Z       "id": "REQ-INST-9",
2026-06-04T12:53:14.4714155Z       "title": "Multi-subnet membership (same-user N subnets; cross-user seam)",
2026-06-04T12:53:14.4714637Z       "requiredStages": [
2026-06-04T12:53:14.4715067Z         "impl",
2026-06-04T12:53:14.4715489Z         "unit"
2026-06-04T12:53:14.4715907Z       ],
2026-06-04T12:53:14.4716340Z       "stages": {
2026-06-04T12:53:14.4716765Z         "doc": {
2026-06-04T12:53:14.4717232Z           "complete": false,
2026-06-04T12:53:14.4717692Z           "evidence": []
2026-06-04T12:53:14.4718104Z         },
2026-06-04T12:53:14.4718551Z         "impl": {
2026-06-04T12:53:14.4719016Z           "complete": true,
2026-06-04T12:53:14.4719535Z           "evidence": [
2026-06-04T12:53:14.4719966Z             {
2026-06-04T12:53:14.4720612Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4721071Z               "line": 198
2026-06-04T12:53:14.4721493Z             }
2026-06-04T12:53:14.4721904Z           ]
2026-06-04T12:53:14.4722332Z         },
2026-06-04T12:53:14.4722752Z         "int": {
2026-06-04T12:53:14.4723231Z           "complete": false,
2026-06-04T12:53:14.4723677Z           "evidence": []
2026-06-04T12:53:14.4724114Z         },
2026-06-04T12:53:14.4724535Z         "unit": {
2026-06-04T12:53:14.4725001Z           "complete": true,
2026-06-04T12:53:14.4725450Z           "evidence": [
2026-06-04T12:53:14.4725864Z             {
2026-06-04T12:53:14.4726505Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4726985Z               "line": 652
2026-06-04T12:53:14.4727410Z             },
2026-06-04T12:53:14.4727834Z             {
2026-06-04T12:53:14.4728480Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4728935Z               "line": 661
2026-06-04T12:53:14.4729395Z             },
2026-06-04T12:53:14.4729819Z             {
2026-06-04T12:53:14.4730450Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4730902Z               "line": 675
2026-06-04T12:53:14.4731329Z             },
2026-06-04T12:53:14.4731741Z             {
2026-06-04T12:53:14.4732387Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4732829Z               "line": 685
2026-06-04T12:53:14.4733261Z             },
2026-06-04T12:53:14.4733670Z             {
2026-06-04T12:53:14.4734307Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T12:53:14.4734763Z               "line": 704
2026-06-04T12:53:14.4735174Z             }
2026-06-04T12:53:14.4735596Z           ]
2026-06-04T12:53:14.4736006Z         }
2026-06-04T12:53:14.4736424Z       }
2026-06-04T12:53:14.4736830Z     },
2026-06-04T12:53:14.4737263Z     {
2026-06-04T12:53:14.4737737Z       "id": "REQ-INSTALL-1",
2026-06-04T12:53:14.4738793Z       "title": "Two install paths; signed one-line script; OS-service registration",
2026-06-04T12:53:14.4739325Z       "requiredStages": [],
2026-06-04T12:53:14.4739760Z       "stages": {
2026-06-04T12:53:14.4740190Z         "doc": {
2026-06-04T12:53:14.4740654Z           "complete": false,
2026-06-04T12:53:14.4741107Z           "evidence": []
2026-06-04T12:53:14.4741524Z         },
2026-06-04T12:53:14.4741944Z         "impl": {
2026-06-04T12:53:14.4742411Z           "complete": false,
2026-06-04T12:53:14.4742856Z           "evidence": []
2026-06-04T12:53:14.4743280Z         },
2026-06-04T12:53:14.4743697Z         "int": {
2026-06-04T12:53:14.4744166Z           "complete": false,
2026-06-04T12:53:14.4744627Z           "evidence": []
2026-06-04T12:53:14.4745035Z         },
2026-06-04T12:53:14.4745465Z         "unit": {
2026-06-04T12:53:14.4745923Z           "complete": false,
2026-06-04T12:53:14.4746586Z           "evidence": []
2026-06-04T12:53:14.4752504Z         }
2026-06-04T12:53:14.4753082Z       }
2026-06-04T12:53:14.4753767Z     },
2026-06-04T12:53:14.4754183Z     {
2026-06-04T12:53:14.4754670Z       "id": "REQ-INSTALL-2",
2026-06-04T12:53:14.4755453Z       "title": "Marketplace-repackaging-friendly install",
2026-06-04T12:53:14.4755935Z       "requiredStages": [],
2026-06-04T12:53:14.4756362Z       "stages": {
2026-06-04T12:53:14.4756790Z         "doc": {
2026-06-04T12:53:14.4757262Z           "complete": false,
2026-06-04T12:53:14.4757709Z           "evidence": []
2026-06-04T12:53:14.4758131Z         },
2026-06-04T12:53:14.4758559Z         "impl": {
2026-06-04T12:53:14.4759036Z           "complete": false,
2026-06-04T12:53:14.4759551Z           "evidence": []
2026-06-04T12:53:14.4759980Z         },
2026-06-04T12:53:14.4760399Z         "int": {
2026-06-04T12:53:14.4760868Z           "complete": false,
2026-06-04T12:53:14.4761317Z           "evidence": []
2026-06-04T12:53:14.4761729Z         },
2026-06-04T12:53:14.4762177Z         "unit": {
2026-06-04T12:53:14.4762640Z           "complete": false,
2026-06-04T12:53:14.4763095Z           "evidence": []
2026-06-04T12:53:14.4763516Z         }
2026-06-04T12:53:14.4763940Z       }
2026-06-04T12:53:14.4764363Z     },
2026-06-04T12:53:14.4764771Z     {
2026-06-04T12:53:14.4765246Z       "id": "REQ-INSTALL-3",
2026-06-04T12:53:14.4765992Z       "title": "Idempotent + interactive-optional first run",
2026-06-04T12:53:14.4766474Z       "requiredStages": [],
2026-06-04T12:53:14.4766896Z       "stages": {
2026-06-04T12:53:14.4767327Z         "doc": {
2026-06-04T12:53:14.4767792Z           "complete": false,
2026-06-04T12:53:14.4768234Z           "evidence": []
2026-06-04T12:53:14.4768666Z         },
2026-06-04T12:53:14.4769089Z         "impl": {
2026-06-04T12:53:14.4769602Z           "complete": false,
2026-06-04T12:53:14.4770046Z           "evidence": []
2026-06-04T12:53:14.4770465Z         },
2026-06-04T12:53:14.4770888Z         "int": {
2026-06-04T12:53:14.4771352Z           "complete": false,
2026-06-04T12:53:14.4771807Z           "evidence": []
2026-06-04T12:53:14.4772220Z         },
2026-06-04T12:53:14.4772659Z         "unit": {
2026-06-04T12:53:14.4773113Z           "complete": false,
2026-06-04T12:53:14.4773570Z           "evidence": []
2026-06-04T12:53:14.4773994Z         }
2026-06-04T12:53:14.4774398Z       }
2026-06-04T12:53:14.4774812Z     },
2026-06-04T12:53:14.4775219Z     {
2026-06-04T12:53:14.4775695Z       "id": "REQ-INSTALL-4",
2026-06-04T12:53:14.4779782Z       "title": "Adapter registration lifecycle: spt adapter add (--github, manifest-first, install-is-first-update) + soft-deregister remove + optional manifest uninstall template; node-local registered-adapter set self-update ripples over",
2026-06-04T12:53:14.4780284Z       "requiredStages": [],
2026-06-04T12:53:14.4780719Z       "stages": {
2026-06-04T12:53:14.4781139Z         "doc": {
2026-06-04T12:53:14.4781608Z           "complete": false,
2026-06-04T12:53:14.4782049Z           "evidence": []
2026-06-04T12:53:14.4782477Z         },
2026-06-04T12:53:14.4782908Z         "impl": {
2026-06-04T12:53:14.4783375Z           "complete": false,
2026-06-04T12:53:14.4783838Z           "evidence": []
2026-06-04T12:53:14.4784247Z         },
2026-06-04T12:53:14.4784678Z         "int": {
2026-06-04T12:53:14.4785136Z           "complete": false,
2026-06-04T12:53:14.4785584Z           "evidence": []
2026-06-04T12:53:14.4786003Z         },
2026-06-04T12:53:14.4786422Z         "unit": {
2026-06-04T12:53:14.4786913Z           "complete": false,
2026-06-04T12:53:14.4787547Z           "evidence": []
2026-06-04T12:53:14.4788029Z         }
2026-06-04T12:53:14.4788518Z       }
2026-06-04T12:53:14.4789124Z     },
2026-06-04T12:53:14.4789598Z     {
2026-06-04T12:53:14.4790081Z       "id": "REQ-MANIFEST-1",
2026-06-04T12:53:14.4791135Z       "title": "Per-adapter manifest with adapter_name and min_spt_core_version",
2026-06-04T12:53:14.4791793Z       "requiredStages": [
2026-06-04T12:53:14.4792427Z         "doc",
2026-06-04T12:53:14.4793093Z         "impl",
2026-06-04T12:53:14.4793549Z         "unit"
2026-06-04T12:53:14.4793980Z       ],
2026-06-04T12:53:14.4794612Z       "stages": {
2026-06-04T12:53:14.4795046Z         "doc": {
2026-06-04T12:53:14.4795503Z           "complete": true,
2026-06-04T12:53:14.4796051Z           "evidence": [
2026-06-04T12:53:14.4796460Z             {
2026-06-04T12:53:14.4796971Z               "path": "docs/MANIFEST.md",
2026-06-04T12:53:14.4797418Z               "line": 19
2026-06-04T12:53:14.4797830Z             }
2026-06-04T12:53:14.4798253Z           ]
2026-06-04T12:53:14.4798661Z         },
2026-06-04T12:53:14.4799091Z         "impl": {
2026-06-04T12:53:14.4799590Z           "complete": true,
2026-06-04T12:53:14.4800041Z           "evidence": [
2026-06-04T12:53:14.4800462Z             {
2026-06-04T12:53:14.4801115Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.4801562Z               "line": 18
2026-06-04T12:53:14.4801970Z             }
2026-06-04T12:53:14.4802392Z           ]
2026-06-04T12:53:14.4802816Z         },
2026-06-04T12:53:14.4803249Z         "int": {
2026-06-04T12:53:14.4803724Z           "complete": false,
2026-06-04T12:53:14.4804180Z           "evidence": []
2026-06-04T12:53:14.4804604Z         },
2026-06-04T12:53:14.4805068Z         "unit": {
2026-06-04T12:53:14.4805535Z           "complete": true,
2026-06-04T12:53:14.4805977Z           "evidence": [
2026-06-04T12:53:14.4806395Z             {
2026-06-04T12:53:14.4807044Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.4807482Z               "line": 706
2026-06-04T12:53:14.4807910Z             },
2026-06-04T12:53:14.4808325Z             {
2026-06-04T12:53:14.4808978Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.4809458Z               "line": 802
2026-06-04T12:53:14.4809891Z             },
2026-06-04T12:53:14.4810311Z             {
2026-06-04T12:53:14.4810951Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.4811418Z               "line": 814
2026-06-04T12:53:14.4811833Z             },
2026-06-04T12:53:14.4812252Z             {
2026-06-04T12:53:14.4812895Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.4813350Z               "line": 822
2026-06-04T12:53:14.4813783Z             },
2026-06-04T12:53:14.4814193Z             {
2026-06-04T12:53:14.4814837Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.4815280Z               "line": 839
2026-06-04T12:53:14.4815712Z             },
2026-06-04T12:53:14.4816122Z             {
2026-06-04T12:53:14.4816763Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.4817214Z               "line": 853
2026-06-04T12:53:14.4817634Z             },
2026-06-04T12:53:14.4818054Z             {
2026-06-04T12:53:14.4818689Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.4819138Z               "line": 868
2026-06-04T12:53:14.4819593Z             },
2026-06-04T12:53:14.4820030Z             {
2026-06-04T12:53:14.4820679Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.4821134Z               "line": 883
2026-06-04T12:53:14.4821557Z             },
2026-06-04T12:53:14.4821970Z             {
2026-06-04T12:53:14.4822606Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.4823039Z               "line": 898
2026-06-04T12:53:14.4823464Z             },
2026-06-04T12:53:14.4823889Z             {
2026-06-04T12:53:14.4824526Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.4824978Z               "line": 909
2026-06-04T12:53:14.4825390Z             }
2026-06-04T12:53:14.4825816Z           ]
2026-06-04T12:53:14.4826225Z         }
2026-06-04T12:53:14.4826646Z       }
2026-06-04T12:53:14.4827062Z     },
2026-06-04T12:53:14.4827466Z     {
2026-06-04T12:53:14.4827945Z       "id": "REQ-MIGRATE-1",
2026-06-04T12:53:14.4828856Z       "title": "Auto-detect and migrate a legacy claude_skill_owl install",
2026-06-04T12:53:14.4829541Z       "requiredStages": [],
2026-06-04T12:53:14.4829979Z       "stages": {
2026-06-04T12:53:14.4830413Z         "doc": {
2026-06-04T12:53:14.4831026Z           "complete": false,
2026-06-04T12:53:14.4831476Z           "evidence": []
2026-06-04T12:53:14.4831893Z         },
2026-06-04T12:53:14.4832316Z         "impl": {
2026-06-04T12:53:14.4832785Z           "complete": false,
2026-06-04T12:53:14.4833230Z           "evidence": []
2026-06-04T12:53:14.4838622Z         },
2026-06-04T12:53:14.4839286Z         "int": {
2026-06-04T12:53:14.4839762Z           "complete": false,
2026-06-04T12:53:14.4840225Z           "evidence": []
2026-06-04T12:53:14.4840636Z         },
2026-06-04T12:53:14.4841065Z         "unit": {
2026-06-04T12:53:14.4841527Z           "complete": false,
2026-06-04T12:53:14.4841986Z           "evidence": []
2026-06-04T12:53:14.4842410Z         }
2026-06-04T12:53:14.4842822Z       }
2026-06-04T12:53:14.4843241Z     },
2026-06-04T12:53:14.4843649Z     {
2026-06-04T12:53:14.4844150Z       "id": "REQ-MSG-1",
2026-06-04T12:53:14.4846833Z       "title": "Local message delivery: TCP-first to a registered address, spool fallback when offline; id->address via registry (stale-clean first); reply routing (__REPLY_TO__)",
2026-06-04T12:53:14.4847336Z       "requiredStages": [
2026-06-04T12:53:14.4847770Z         "impl",
2026-06-04T12:53:14.4848185Z         "unit",
2026-06-04T12:53:14.4848614Z         "int"
2026-06-04T12:53:14.4849022Z       ],
2026-06-04T12:53:14.4849506Z       "stages": {
2026-06-04T12:53:14.4849927Z         "doc": {
2026-06-04T12:53:14.4850399Z           "complete": false,
2026-06-04T12:53:14.4850849Z           "evidence": []
2026-06-04T12:53:14.4851253Z         },
2026-06-04T12:53:14.4851690Z         "impl": {
2026-06-04T12:53:14.4852140Z           "complete": true,
2026-06-04T12:53:14.4852591Z           "evidence": [
2026-06-04T12:53:14.4853003Z             {
2026-06-04T12:53:14.4853599Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4854053Z               "line": 28
2026-06-04T12:53:14.4854476Z             },
2026-06-04T12:53:14.4854899Z             {
2026-06-04T12:53:14.4855492Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4855939Z               "line": 94
2026-06-04T12:53:14.4856366Z             },
2026-06-04T12:53:14.4856775Z             {
2026-06-04T12:53:14.4857372Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4857816Z               "line": 127
2026-06-04T12:53:14.4858240Z             },
2026-06-04T12:53:14.4858644Z             {
2026-06-04T12:53:14.4859267Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4859726Z               "line": 149
2026-06-04T12:53:14.4860140Z             },
2026-06-04T12:53:14.4860560Z             {
2026-06-04T12:53:14.4861148Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4861595Z               "line": 174
2026-06-04T12:53:14.4862005Z             },
2026-06-04T12:53:14.4862423Z             {
2026-06-04T12:53:14.4863044Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:53:14.4863476Z               "line": 18
2026-06-04T12:53:14.4863910Z             },
2026-06-04T12:53:14.4864315Z             {
2026-06-04T12:53:14.4864880Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:53:14.4865312Z               "line": 13
2026-06-04T12:53:14.4865734Z             },
2026-06-04T12:53:14.4866151Z             {
2026-06-04T12:53:14.4866706Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:53:14.4867151Z               "line": 61
2026-06-04T12:53:14.4867563Z             },
2026-06-04T12:53:14.4867980Z             {
2026-06-04T12:53:14.4868534Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T12:53:14.4868976Z               "line": 10
2026-06-04T12:53:14.4869438Z             }
2026-06-04T12:53:14.4869850Z           ]
2026-06-04T12:53:14.4873111Z         },
2026-06-04T12:53:14.4873554Z         "int": {
2026-06-04T12:53:14.4874021Z           "complete": true,
2026-06-04T12:53:14.4874779Z           "evidence": [
2026-06-04T12:53:14.4875205Z             {
2026-06-04T12:53:14.4875939Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T12:53:14.4876511Z               "line": 9
2026-06-04T12:53:14.4876931Z             },
2026-06-04T12:53:14.4877341Z             {
2026-06-04T12:53:14.4878064Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T12:53:14.4878498Z               "line": 66
2026-06-04T12:53:14.4878926Z             },
2026-06-04T12:53:14.4879390Z             {
2026-06-04T12:53:14.4880115Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T12:53:14.4880579Z               "line": 116
2026-06-04T12:53:14.4880987Z             }
2026-06-04T12:53:14.4881408Z           ]
2026-06-04T12:53:14.4881876Z         },
2026-06-04T12:53:14.4882760Z         "unit": {
2026-06-04T12:53:14.4883299Z           "complete": true,
2026-06-04T12:53:14.4883987Z           "evidence": [
2026-06-04T12:53:14.4884635Z             {
2026-06-04T12:53:14.4885696Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4886249Z               "line": 203
2026-06-04T12:53:14.4886913Z             },
2026-06-04T12:53:14.4887369Z             {
2026-06-04T12:53:14.4888026Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4888533Z               "line": 232
2026-06-04T12:53:14.4889005Z             },
2026-06-04T12:53:14.4889692Z             {
2026-06-04T12:53:14.4890518Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4891018Z               "line": 277
2026-06-04T12:53:14.4891457Z             },
2026-06-04T12:53:14.4891924Z             {
2026-06-04T12:53:14.4892560Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4893054Z               "line": 300
2026-06-04T12:53:14.4893507Z             },
2026-06-04T12:53:14.4893959Z             {
2026-06-04T12:53:14.4894718Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T12:53:14.4895208Z               "line": 322
2026-06-04T12:53:14.4895659Z             },
2026-06-04T12:53:14.4896108Z             {
2026-06-04T12:53:14.4896763Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:53:14.4897242Z               "line": 203
2026-06-04T12:53:14.4897693Z             },
2026-06-04T12:53:14.4898115Z             {
2026-06-04T12:53:14.4898733Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:53:14.4899296Z               "line": 233
2026-06-04T12:53:14.4900091Z             },
2026-06-04T12:53:14.4900561Z             {
2026-06-04T12:53:14.4901207Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:53:14.4901689Z               "line": 247
2026-06-04T12:53:14.4902131Z             },
2026-06-04T12:53:14.4902567Z             {
2026-06-04T12:53:14.4903196Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:53:14.4903676Z               "line": 259
2026-06-04T12:53:14.4904117Z             },
2026-06-04T12:53:14.4904548Z             {
2026-06-04T12:53:14.4905176Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:53:14.4905644Z               "line": 158
2026-06-04T12:53:14.4906094Z             },
2026-06-04T12:53:14.4906535Z             {
2026-06-04T12:53:14.4907111Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T12:53:14.4907590Z               "line": 235
2026-06-04T12:53:14.4908026Z             },
2026-06-04T12:53:14.4908474Z             {
2026-06-04T12:53:14.4909081Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T12:53:14.4910067Z               "line": 68
2026-06-04T12:53:14.4910599Z             },
2026-06-04T12:53:14.4911108Z             {
2026-06-04T12:53:14.4911781Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T12:53:14.4912267Z               "line": 74
2026-06-04T12:53:14.4912731Z             },
2026-06-04T12:53:14.4913203Z             {
2026-06-04T12:53:14.4913826Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T12:53:14.4914359Z               "line": 80
2026-06-04T12:53:14.4915219Z             },
2026-06-04T12:53:14.4915690Z             {
2026-06-04T12:53:14.4916310Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T12:53:14.4917013Z               "line": 99
2026-06-04T12:53:14.4917491Z             }
2026-06-04T12:53:14.4917943Z           ]
2026-06-04T12:53:14.4918407Z         }
2026-06-04T12:53:14.4918865Z       }
2026-06-04T12:53:14.4919535Z     },
2026-06-04T12:53:14.4919979Z     {
2026-06-04T12:53:14.4920464Z       "id": "REQ-MSG-2",
2026-06-04T12:53:14.4922049Z       "title": "spt binary CLI surface: send/ring/ready/poll/list/stop/whoami, stable arg shapes + exit codes",
2026-06-04T12:53:14.4922550Z       "requiredStages": [
2026-06-04T12:53:14.4923001Z         "impl",
2026-06-04T12:53:14.4923433Z         "unit"
2026-06-04T12:53:14.4923885Z       ],
2026-06-04T12:53:14.4924357Z       "stages": {
2026-06-04T12:53:14.4933609Z         "doc": {
2026-06-04T12:53:14.4934162Z           "complete": false,
2026-06-04T12:53:14.4934645Z           "evidence": []
2026-06-04T12:53:14.4935147Z         },
2026-06-04T12:53:14.4935602Z         "impl": {
2026-06-04T12:53:14.4936108Z           "complete": true,
2026-06-04T12:53:14.4936576Z           "evidence": [
2026-06-04T12:53:14.4937029Z             {
2026-06-04T12:53:14.4937616Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.4938092Z               "line": 11
2026-06-04T12:53:14.4938547Z             },
2026-06-04T12:53:14.4938997Z             {
2026-06-04T12:53:14.4939673Z               "path": "crates/spt/src/main.rs",
2026-06-04T12:53:14.4940147Z               "line": 8
2026-06-04T12:53:14.4940608Z             }
2026-06-04T12:53:14.4941058Z           ]
2026-06-04T12:53:14.4941500Z         },
2026-06-04T12:53:14.4941964Z         "int": {
2026-06-04T12:53:14.4942464Z           "complete": false,
2026-06-04T12:53:14.4942950Z           "evidence": []
2026-06-04T12:53:14.4943385Z         },
2026-06-04T12:53:14.4943855Z         "unit": {
2026-06-04T12:53:14.4944362Z           "complete": true,
2026-06-04T12:53:14.4944860Z           "evidence": [
2026-06-04T12:53:14.4945311Z             {
2026-06-04T12:53:14.4945889Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.4946395Z               "line": 1100
2026-06-04T12:53:14.4946889Z             },
2026-06-04T12:53:14.4947360Z             {
2026-06-04T12:53:14.4947945Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.4948423Z               "line": 1213
2026-06-04T12:53:14.4948873Z             },
2026-06-04T12:53:14.4949369Z             {
2026-06-04T12:53:14.4950110Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.4950577Z               "line": 1222
2026-06-04T12:53:14.4951022Z             },
2026-06-04T12:53:14.4951469Z             {
2026-06-04T12:53:14.4952016Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.4952501Z               "line": 1234
2026-06-04T12:53:14.4952930Z             }
2026-06-04T12:53:14.4953372Z           ]
2026-06-04T12:53:14.4953796Z         }
2026-06-04T12:53:14.4954251Z       }
2026-06-04T12:53:14.4954685Z     },
2026-06-04T12:53:14.4955109Z     {
2026-06-04T12:53:14.4955627Z       "id": "REQ-MSG-3",
2026-06-04T12:53:14.4957992Z       "title": "Ready-agent lifecycle: register perch (info.json + listener + registry address) on ready, drain spooled backlog on startup, clean teardown",
2026-06-04T12:53:14.4958512Z       "requiredStages": [
2026-06-04T12:53:14.4958957Z         "impl",
2026-06-04T12:53:14.4959649Z         "unit",
2026-06-04T12:53:14.4960271Z         "int"
2026-06-04T12:53:14.4960721Z       ],
2026-06-04T12:53:14.4961175Z       "stages": {
2026-06-04T12:53:14.4961603Z         "doc": {
2026-06-04T12:53:14.4962102Z           "complete": false,
2026-06-04T12:53:14.4962566Z           "evidence": []
2026-06-04T12:53:14.4963028Z         },
2026-06-04T12:53:14.4963483Z         "impl": {
2026-06-04T12:53:14.4963955Z           "complete": true,
2026-06-04T12:53:14.4964418Z           "evidence": [
2026-06-04T12:53:14.4964843Z             {
2026-06-04T12:53:14.4966068Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T12:53:14.4966533Z               "line": 19
2026-06-04T12:53:14.4967174Z             },
2026-06-04T12:53:14.4967619Z             {
2026-06-04T12:53:14.4968219Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:53:14.4968684Z               "line": 21
2026-06-04T12:53:14.4969109Z             },
2026-06-04T12:53:14.4969807Z             {
2026-06-04T12:53:14.4970562Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:53:14.4971024Z               "line": 48
2026-06-04T12:53:14.4971464Z             },
2026-06-04T12:53:14.4971913Z             {
2026-06-04T12:53:14.4972529Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:53:14.4972990Z               "line": 106
2026-06-04T12:53:14.4973439Z             }
2026-06-04T12:53:14.4973861Z           ]
2026-06-04T12:53:14.4974332Z         },
2026-06-04T12:53:14.4974794Z         "int": {
2026-06-04T12:53:14.4975278Z           "complete": true,
2026-06-04T12:53:14.4975772Z           "evidence": [
2026-06-04T12:53:14.4976212Z             {
2026-06-04T12:53:14.4976974Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T12:53:14.4977453Z               "line": 10
2026-06-04T12:53:14.4977897Z             },
2026-06-04T12:53:14.4978335Z             {
2026-06-04T12:53:14.4979072Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T12:53:14.4979776Z               "line": 66
2026-06-04T12:53:14.4980244Z             }
2026-06-04T12:53:14.4980725Z           ]
2026-06-04T12:53:14.4981171Z         },
2026-06-04T12:53:14.4981631Z         "unit": {
2026-06-04T12:53:14.4982133Z           "complete": true,
2026-06-04T12:53:14.4982604Z           "evidence": [
2026-06-04T12:53:14.4983061Z             {
2026-06-04T12:53:14.4983812Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:53:14.4984314Z               "line": 160
2026-06-04T12:53:14.4984856Z             },
2026-06-04T12:53:14.4985324Z             {
2026-06-04T12:53:14.4985966Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:53:14.4986467Z               "line": 179
2026-06-04T12:53:14.4986937Z             },
2026-06-04T12:53:14.4987382Z             {
2026-06-04T12:53:14.4988006Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T12:53:14.4988503Z               "line": 198
2026-06-04T12:53:14.4988950Z             }
2026-06-04T12:53:14.4989621Z           ]
2026-06-04T12:53:14.4990072Z         }
2026-06-04T12:53:14.4990517Z       }
2026-06-04T12:53:14.4990951Z     },
2026-06-04T12:53:14.4991394Z     {
2026-06-04T12:53:14.4991883Z       "id": "REQ-NET-1",
2026-06-04T12:53:14.4992958Z       "title": "WAN messaging first-class, behind default-on net feature flag",
2026-06-04T12:53:14.4993480Z       "requiredStages": [
2026-06-04T12:53:14.4993933Z         "impl",
2026-06-04T12:53:14.4994384Z         "unit"
2026-06-04T12:53:14.4994815Z       ],
2026-06-04T12:53:14.4995269Z       "stages": {
2026-06-04T12:53:14.4995856Z         "doc": {
2026-06-04T12:53:14.4996417Z           "complete": false,
2026-06-04T12:53:14.4996904Z           "evidence": []
2026-06-04T12:53:14.4997347Z         },
2026-06-04T12:53:14.4997803Z         "impl": {
2026-06-04T12:53:14.4998289Z           "complete": true,
2026-06-04T12:53:14.4998761Z           "evidence": [
2026-06-04T12:53:14.4999414Z             {
2026-06-04T12:53:14.5000319Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:53:14.5000819Z               "line": 52
2026-06-04T12:53:14.5001255Z             },
2026-06-04T12:53:14.5001705Z             {
2026-06-04T12:53:14.5002373Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:53:14.5002853Z               "line": 448
2026-06-04T12:53:14.5003284Z             },
2026-06-04T12:53:14.5003714Z             {
2026-06-04T12:53:14.5004329Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T12:53:14.5004798Z               "line": 69
2026-06-04T12:53:14.5005260Z             },
2026-06-04T12:53:14.5006079Z             {
2026-06-04T12:53:14.5006768Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5007450Z               "line": 65
2026-06-04T12:53:14.5007896Z             },
2026-06-04T12:53:14.5008349Z             {
2026-06-04T12:53:14.5009026Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5009901Z               "line": 122
2026-06-04T12:53:14.5010362Z             },
2026-06-04T12:53:14.5010828Z             {
2026-06-04T12:53:14.5011521Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5011994Z               "line": 138
2026-06-04T12:53:14.5012442Z             },
2026-06-04T12:53:14.5012875Z             {
2026-06-04T12:53:14.5013552Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5014023Z               "line": 153
2026-06-04T12:53:14.5014496Z             },
2026-06-04T12:53:14.5014959Z             {
2026-06-04T12:53:14.5015639Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5016136Z               "line": 207
2026-06-04T12:53:14.5016573Z             },
2026-06-04T12:53:14.5017029Z             {
2026-06-04T12:53:14.5017687Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5018165Z               "line": 242
2026-06-04T12:53:14.5018631Z             },
2026-06-04T12:53:14.5019082Z             {
2026-06-04T12:53:14.5020123Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5020632Z               "line": 248
2026-06-04T12:53:14.5021093Z             },
2026-06-04T12:53:14.5021524Z             {
2026-06-04T12:53:14.5022203Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5022676Z               "line": 254
2026-06-04T12:53:14.5023127Z             },
2026-06-04T12:53:14.5023568Z             {
2026-06-04T12:53:14.5024244Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5024730Z               "line": 270
2026-06-04T12:53:14.5025173Z             },
2026-06-04T12:53:14.5025627Z             {
2026-06-04T12:53:14.5026289Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5026766Z               "line": 290
2026-06-04T12:53:14.5027211Z             },
2026-06-04T12:53:14.5027643Z             {
2026-06-04T12:53:14.5028306Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:53:14.5028784Z               "line": 35
2026-06-04T12:53:14.5029269Z             },
2026-06-04T12:53:14.5029889Z             {
2026-06-04T12:53:14.5030556Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:53:14.5031051Z               "line": 82
2026-06-04T12:53:14.5031503Z             },
2026-06-04T12:53:14.5031960Z             {
2026-06-04T12:53:14.5032595Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.5033074Z               "line": 129
2026-06-04T12:53:14.5033549Z             },
2026-06-04T12:53:14.5033992Z             {
2026-06-04T12:53:14.5034577Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5035130Z               "line": 600
2026-06-04T12:53:14.5035702Z             },
2026-06-04T12:53:14.5036207Z             {
2026-06-04T12:53:14.5036832Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T12:53:14.5037335Z               "line": 17
2026-06-04T12:53:14.5037799Z             }
2026-06-04T12:53:14.5038257Z           ]
2026-06-04T12:53:14.5038714Z         },
2026-06-04T12:53:14.5039274Z         "int": {
2026-06-04T12:53:14.5039974Z           "complete": true,
2026-06-04T12:53:14.5049776Z           "evidence": [
2026-06-04T12:53:14.5050504Z             {
2026-06-04T12:53:14.5051304Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:53:14.5051815Z               "line": 314
2026-06-04T12:53:14.5052295Z             }
2026-06-04T12:53:14.5052787Z           ]
2026-06-04T12:53:14.5053266Z         },
2026-06-04T12:53:14.5053901Z         "unit": {
2026-06-04T12:53:14.5054443Z           "complete": true,
2026-06-04T12:53:14.5054978Z           "evidence": [
2026-06-04T12:53:14.5056079Z             {
2026-06-04T12:53:14.5056851Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:53:14.5057626Z               "line": 500
2026-06-04T12:53:14.5058095Z             },
2026-06-04T12:53:14.5058557Z             {
2026-06-04T12:53:14.5059418Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:53:14.5059947Z               "line": 529
2026-06-04T12:53:14.5060448Z             },
2026-06-04T12:53:14.5060918Z             {
2026-06-04T12:53:14.5061692Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:53:14.5062224Z               "line": 517
2026-06-04T12:53:14.5062710Z             },
2026-06-04T12:53:14.5063194Z             {
2026-06-04T12:53:14.5063908Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T12:53:14.5064496Z               "line": 142
2026-06-04T12:53:14.5065040Z             },
2026-06-04T12:53:14.5065568Z             {
2026-06-04T12:53:14.5066354Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5066948Z               "line": 344
2026-06-04T12:53:14.5067450Z             },
2026-06-04T12:53:14.5067908Z             {
2026-06-04T12:53:14.5068633Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5069151Z               "line": 358
2026-06-04T12:53:14.5069833Z             },
2026-06-04T12:53:14.5070292Z             {
2026-06-04T12:53:14.5070988Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5071477Z               "line": 377
2026-06-04T12:53:14.5071924Z             },
2026-06-04T12:53:14.5072387Z             {
2026-06-04T12:53:14.5073062Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:53:14.5073526Z               "line": 106
2026-06-04T12:53:14.5073967Z             },
2026-06-04T12:53:14.5074404Z             {
2026-06-04T12:53:14.5075059Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T12:53:14.5075531Z               "line": 148
2026-06-04T12:53:14.5076103Z             },
2026-06-04T12:53:14.5076568Z             {
2026-06-04T12:53:14.5077215Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T12:53:14.5077880Z               "line": 445
2026-06-04T12:53:14.5078387Z             },
2026-06-04T12:53:14.5079035Z             {
2026-06-04T12:53:14.5080030Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T12:53:14.5080565Z               "line": 218
2026-06-04T12:53:14.5081034Z             },
2026-06-04T12:53:14.5081477Z             {
2026-06-04T12:53:14.5082072Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T12:53:14.5082545Z               "line": 306
2026-06-04T12:53:14.5082998Z             }
2026-06-04T12:53:14.5083432Z           ]
2026-06-04T12:53:14.5083875Z         }
2026-06-04T12:53:14.5084311Z       }
2026-06-04T12:53:14.5084736Z     },
2026-06-04T12:53:14.5085170Z     {
2026-06-04T12:53:14.5085633Z       "id": "REQ-NET-2",
2026-06-04T12:53:14.5086678Z       "title": "n0 relay default + self-host knob + plain-language disclosure",
2026-06-04T12:53:14.5087195Z       "requiredStages": [
2026-06-04T12:53:14.5087652Z         "impl"
2026-06-04T12:53:14.5088107Z       ],
2026-06-04T12:53:14.5088563Z       "stages": {
2026-06-04T12:53:14.5089044Z         "doc": {
2026-06-04T12:53:14.5089975Z           "complete": false,
2026-06-04T12:53:14.5090708Z           "evidence": []
2026-06-04T12:53:14.5091235Z         },
2026-06-04T12:53:14.5091818Z         "impl": {
2026-06-04T12:53:14.5092441Z           "complete": true,
2026-06-04T12:53:14.5092999Z           "evidence": [
2026-06-04T12:53:14.5093520Z             {
2026-06-04T12:53:14.5094262Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:53:14.5094804Z               "line": 49
2026-06-04T12:53:14.5095284Z             },
2026-06-04T12:53:14.5095754Z             {
2026-06-04T12:53:14.5096605Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5097110Z               "line": 39
2026-06-04T12:53:14.5097591Z             },
2026-06-04T12:53:14.5098553Z             {
2026-06-04T12:53:14.5099463Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5100301Z               "line": 49
2026-06-04T12:53:14.5100813Z             },
2026-06-04T12:53:14.5101307Z             {
2026-06-04T12:53:14.5102064Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5102617Z               "line": 122
2026-06-04T12:53:14.5103092Z             },
2026-06-04T12:53:14.5103552Z             {
2026-06-04T12:53:14.5104236Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5104721Z               "line": 138
2026-06-04T12:53:14.5105181Z             },
2026-06-04T12:53:14.5105709Z             {
2026-06-04T12:53:14.5106421Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T12:53:14.5106900Z               "line": 153
2026-06-04T12:53:14.5107352Z             }
2026-06-04T12:53:14.5107800Z           ]
2026-06-04T12:53:14.5108248Z         },
2026-06-04T12:53:14.5108733Z         "int": {
2026-06-04T12:53:14.5109306Z           "complete": false,
2026-06-04T12:53:14.5109814Z           "evidence": []
2026-06-04T12:53:14.5110292Z         },
2026-06-04T12:53:14.5110753Z         "unit": {
2026-06-04T12:53:14.5111248Z           "complete": true,
2026-06-04T12:53:14.5111700Z           "evidence": [
2026-06-04T12:53:14.5112138Z             {
2026-06-04T12:53:14.5112779Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:53:14.5113244Z               "line": 321
2026-06-04T12:53:14.5113673Z             }
2026-06-04T12:53:14.5114105Z           ]
2026-06-04T12:53:14.5114536Z         }
2026-06-04T12:53:14.5114962Z       }
2026-06-04T12:53:14.5115391Z     },
2026-06-04T12:53:14.5115809Z     {
2026-06-04T12:53:14.5116278Z       "id": "REQ-NET-3",
2026-06-04T12:53:14.5117227Z       "title": "Cross-node Psyche sync over P2P replaces gh-repo-sync",
2026-06-04T12:53:14.5117731Z       "requiredStages": [
2026-06-04T12:53:14.5118183Z         "impl",
2026-06-04T12:53:14.5118633Z         "unit"
2026-06-04T12:53:14.5119069Z       ],
2026-06-04T12:53:14.5119559Z       "stages": {
2026-06-04T12:53:14.5120162Z         "doc": {
2026-06-04T12:53:14.5120630Z           "complete": false,
2026-06-04T12:53:14.5121082Z           "evidence": []
2026-06-04T12:53:14.5121495Z         },
2026-06-04T12:53:14.5121929Z         "impl": {
2026-06-04T12:53:14.5122390Z           "complete": true,
2026-06-04T12:53:14.5122836Z           "evidence": [
2026-06-04T12:53:14.5123257Z             {
2026-06-04T12:53:14.5123853Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.5124299Z               "line": 39
2026-06-04T12:53:14.5124722Z             },
2026-06-04T12:53:14.5125142Z             {
2026-06-04T12:53:14.5125734Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.5126174Z               "line": 159
2026-06-04T12:53:14.5126608Z             },
2026-06-04T12:53:14.5127012Z             {
2026-06-04T12:53:14.5127605Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T12:53:14.5128069Z               "line": 290
2026-06-04T12:53:14.5128483Z             },
2026-06-04T12:53:14.5128915Z             {
2026-06-04T12:53:14.5129861Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T12:53:14.5130329Z               "line": 36
2026-06-04T12:53:14.5130741Z             },
2026-06-04T12:53:14.5131164Z             {
2026-06-04T12:53:14.5131830Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.5132281Z               "line": 135
2026-06-04T12:53:14.5132709Z             },
2026-06-04T12:53:14.5133116Z             {
2026-06-04T12:53:14.5141136Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.5141768Z               "line": 172
2026-06-04T12:53:14.5142208Z             },
2026-06-04T12:53:14.5142636Z             {
2026-06-04T12:53:14.5143302Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.5143756Z               "line": 184
2026-06-04T12:53:14.5144687Z             },
2026-06-04T12:53:14.5145114Z             {
2026-06-04T12:53:14.5145769Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.5146392Z               "line": 222
2026-06-04T12:53:14.5146822Z             },
2026-06-04T12:53:14.5147240Z             {
2026-06-04T12:53:14.5147902Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.5148349Z               "line": 237
2026-06-04T12:53:14.5148781Z             },
2026-06-04T12:53:14.5149250Z             {
2026-06-04T12:53:14.5150271Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.5150727Z               "line": 273
2026-06-04T12:53:14.5151146Z             },
2026-06-04T12:53:14.5151566Z             {
2026-06-04T12:53:14.5152217Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.5152675Z               "line": 314
2026-06-04T12:53:14.5153094Z             },
2026-06-04T12:53:14.5153520Z             {
2026-06-04T12:53:14.5154196Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.5154638Z               "line": 327
2026-06-04T12:53:14.5155139Z             },
2026-06-04T12:53:14.5155550Z             {
2026-06-04T12:53:14.5156191Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:53:14.5156636Z               "line": 29
2026-06-04T12:53:14.5157052Z             },
2026-06-04T12:53:14.5157467Z             {
2026-06-04T12:53:14.5158097Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:53:14.5158544Z               "line": 70
2026-06-04T12:53:14.5158956Z             },
2026-06-04T12:53:14.5159567Z             {
2026-06-04T12:53:14.5160383Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:53:14.5160824Z               "line": 121
2026-06-04T12:53:14.5161248Z             }
2026-06-04T12:53:14.5161658Z           ]
2026-06-04T12:53:14.5162071Z         },
2026-06-04T12:53:14.5162484Z         "int": {
2026-06-04T12:53:14.5162960Z           "complete": false,
2026-06-04T12:53:14.5163425Z           "evidence": []
2026-06-04T12:53:14.5163839Z         },
2026-06-04T12:53:14.5164302Z         "unit": {
2026-06-04T12:53:14.5164760Z           "complete": true,
2026-06-04T12:53:14.5165207Z           "evidence": [
2026-06-04T12:53:14.5165620Z             {
2026-06-04T12:53:14.5166236Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:53:14.5166690Z               "line": 203
2026-06-04T12:53:14.5167103Z             },
2026-06-04T12:53:14.5167523Z             {
2026-06-04T12:53:14.5168132Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:53:14.5168584Z               "line": 303
2026-06-04T12:53:14.5169001Z             },
2026-06-04T12:53:14.5169464Z             {
2026-06-04T12:53:14.5170091Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T12:53:14.5170529Z               "line": 399
2026-06-04T12:53:14.5170951Z             },
2026-06-04T12:53:14.5171364Z             {
2026-06-04T12:53:14.5171969Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T12:53:14.5172430Z               "line": 93
2026-06-04T12:53:14.5172859Z             },
2026-06-04T12:53:14.5173283Z             {
2026-06-04T12:53:14.5173871Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T12:53:14.5174320Z               "line": 131
2026-06-04T12:53:14.5174733Z             },
2026-06-04T12:53:14.5175149Z             {
2026-06-04T12:53:14.5175774Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:53:14.5176226Z               "line": 308
2026-06-04T12:53:14.5176645Z             },
2026-06-04T12:53:14.5177059Z             {
2026-06-04T12:53:14.5177703Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:53:14.5178148Z               "line": 345
2026-06-04T12:53:14.5178572Z             },
2026-06-04T12:53:14.5178983Z             {
2026-06-04T12:53:14.5179657Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T12:53:14.5180105Z               "line": 469
2026-06-04T12:53:14.5180684Z             }
2026-06-04T12:53:14.5181109Z           ]
2026-06-04T12:53:14.5181523Z         }
2026-06-04T12:53:14.5182069Z       }
2026-06-04T12:53:14.5182478Z     },
2026-06-04T12:53:14.5182903Z     {
2026-06-04T12:53:14.5183402Z       "id": "REQ-NODE-IDENTITY",
2026-06-04T12:53:14.5184728Z       "title": "Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex",
2026-06-04T12:53:14.5185210Z       "requiredStages": [
2026-06-04T12:53:14.5185697Z         "impl",
2026-06-04T12:53:14.5186127Z         "unit"
2026-06-04T12:53:14.5186537Z       ],
2026-06-04T12:53:14.5186974Z       "stages": {
2026-06-04T12:53:14.5187395Z         "doc": {
2026-06-04T12:53:14.5187854Z           "complete": false,
2026-06-04T12:53:14.5188313Z           "evidence": []
2026-06-04T12:53:14.5188720Z         },
2026-06-04T12:53:14.5189194Z         "impl": {
2026-06-04T12:53:14.5189657Z           "complete": true,
2026-06-04T12:53:14.5190105Z           "evidence": [
2026-06-04T12:53:14.5190539Z             {
2026-06-04T12:53:14.5191177Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:53:14.5191643Z               "line": 60
2026-06-04T12:53:14.5192054Z             },
2026-06-04T12:53:14.5192475Z             {
2026-06-04T12:53:14.5193103Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:53:14.5193667Z               "line": 68
2026-06-04T12:53:14.5194086Z             },
2026-06-04T12:53:14.5194492Z             {
2026-06-04T12:53:14.5195117Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:53:14.5195558Z               "line": 86
2026-06-04T12:53:14.5195980Z             },
2026-06-04T12:53:14.5196391Z             {
2026-06-04T12:53:14.5197026Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:53:14.5197476Z               "line": 120
2026-06-04T12:53:14.5197897Z             },
2026-06-04T12:53:14.5198322Z             {
2026-06-04T12:53:14.5198939Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:53:14.5199447Z               "line": 127
2026-06-04T12:53:14.5199877Z             },
2026-06-04T12:53:14.5200287Z             {
2026-06-04T12:53:14.5200937Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:53:14.5201383Z               "line": 143
2026-06-04T12:53:14.5201806Z             },
2026-06-04T12:53:14.5202215Z             {
2026-06-04T12:53:14.5202835Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T12:53:14.5203287Z               "line": 16
2026-06-04T12:53:14.5203703Z             }
2026-06-04T12:53:14.5204128Z           ]
2026-06-04T12:53:14.5204537Z         },
2026-06-04T12:53:14.5204972Z         "int": {
2026-06-04T12:53:14.5205434Z           "complete": false,
2026-06-04T12:53:14.5205884Z           "evidence": []
2026-06-04T12:53:14.5206303Z         },
2026-06-04T12:53:14.5206723Z         "unit": {
2026-06-04T12:53:14.5207187Z           "complete": true,
2026-06-04T12:53:14.5207628Z           "evidence": [
2026-06-04T12:53:14.5208044Z             {
2026-06-04T12:53:14.5208677Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:53:14.5209133Z               "line": 199
2026-06-04T12:53:14.5209612Z             },
2026-06-04T12:53:14.5210025Z             {
2026-06-04T12:53:14.5210660Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:53:14.5211108Z               "line": 218
2026-06-04T12:53:14.5211537Z             },
2026-06-04T12:53:14.5211950Z             {
2026-06-04T12:53:14.5212584Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:53:14.5213040Z               "line": 232
2026-06-04T12:53:14.5213457Z             },
2026-06-04T12:53:14.5213879Z             {
2026-06-04T12:53:14.5214494Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T12:53:14.5214946Z               "line": 248
2026-06-04T12:53:14.5215366Z             },
2026-06-04T12:53:14.5215789Z             {
2026-06-04T12:53:14.5216477Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T12:53:14.5217102Z               "line": 125
2026-06-04T12:53:14.5217542Z             },
2026-06-04T12:53:14.5217955Z             {
2026-06-04T12:53:14.5218702Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T12:53:14.5219145Z               "line": 141
2026-06-04T12:53:14.5219623Z             },
2026-06-04T12:53:14.5220049Z             {
2026-06-04T12:53:14.5220646Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T12:53:14.5226403Z               "line": 153
2026-06-04T12:53:14.5226979Z             }
2026-06-04T12:53:14.5227446Z           ]
2026-06-04T12:53:14.5227869Z         }
2026-06-04T12:53:14.5228291Z       }
2026-06-04T12:53:14.5228706Z     },
2026-06-04T12:53:14.5229116Z     {
2026-06-04T12:53:14.5229672Z       "id": "REQ-NOTIF-1",
2026-06-04T12:53:14.5231844Z       "title": "Notification primitive: per-subnet replicated spool, seen/dismissed, resurface-at-boundary, subsumes update+consent prompts",
2026-06-04T12:53:14.5232328Z       "requiredStages": [
2026-06-04T12:53:14.5232780Z         "impl",
2026-06-04T12:53:14.5233213Z         "unit"
2026-06-04T12:53:14.5233634Z       ],
2026-06-04T12:53:14.5234071Z       "stages": {
2026-06-04T12:53:14.5234500Z         "doc": {
2026-06-04T12:53:14.5234955Z           "complete": false,
2026-06-04T12:53:14.5235406Z           "evidence": []
2026-06-04T12:53:14.5235815Z         },
2026-06-04T12:53:14.5236249Z         "impl": {
2026-06-04T12:53:14.5236710Z           "complete": true,
2026-06-04T12:53:14.5237151Z           "evidence": [
2026-06-04T12:53:14.5237570Z             {
2026-06-04T12:53:14.5238202Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T12:53:14.5238665Z               "line": 412
2026-06-04T12:53:14.5239084Z             },
2026-06-04T12:53:14.5239568Z             {
2026-06-04T12:53:14.5240186Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5240625Z               "line": 30
2026-06-04T12:53:14.5241041Z             },
2026-06-04T12:53:14.5241463Z             {
2026-06-04T12:53:14.5242078Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5242513Z               "line": 62
2026-06-04T12:53:14.5242951Z             },
2026-06-04T12:53:14.5243370Z             {
2026-06-04T12:53:14.5243963Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5244406Z               "line": 83
2026-06-04T12:53:14.5244821Z             },
2026-06-04T12:53:14.5245240Z             {
2026-06-04T12:53:14.5245830Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5246280Z               "line": 97
2026-06-04T12:53:14.5246703Z             },
2026-06-04T12:53:14.5247113Z             {
2026-06-04T12:53:14.5247720Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5248160Z               "line": 126
2026-06-04T12:53:14.5248582Z             },
2026-06-04T12:53:14.5249000Z             {
2026-06-04T12:53:14.5249640Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5250096Z               "line": 159
2026-06-04T12:53:14.5250521Z             },
2026-06-04T12:53:14.5250938Z             {
2026-06-04T12:53:14.5251536Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5252000Z               "line": 179
2026-06-04T12:53:14.5252429Z             },
2026-06-04T12:53:14.5252838Z             {
2026-06-04T12:53:14.5253444Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5253882Z               "line": 239
2026-06-04T12:53:14.5254302Z             },
2026-06-04T12:53:14.5254708Z             {
2026-06-04T12:53:14.5255308Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5255754Z               "line": 287
2026-06-04T12:53:14.5256167Z             },
2026-06-04T12:53:14.5256584Z             {
2026-06-04T12:53:14.5257234Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:53:14.5257895Z               "line": 24
2026-06-04T12:53:14.5258339Z             },
2026-06-04T12:53:14.5258837Z             {
2026-06-04T12:53:14.5260149Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:53:14.5260595Z               "line": 34
2026-06-04T12:53:14.5261209Z             },
2026-06-04T12:53:14.5261628Z             {
2026-06-04T12:53:14.5262276Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:53:14.5262712Z               "line": 55
2026-06-04T12:53:14.5263135Z             },
2026-06-04T12:53:14.5263554Z             {
2026-06-04T12:53:14.5264183Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:53:14.5264632Z               "line": 76
2026-06-04T12:53:14.5265047Z             },
2026-06-04T12:53:14.5265506Z             {
2026-06-04T12:53:14.5266144Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:53:14.5266596Z               "line": 88
2026-06-04T12:53:14.5267024Z             },
2026-06-04T12:53:14.5267437Z             {
2026-06-04T12:53:14.5268084Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T12:53:14.5268521Z               "line": 41
2026-06-04T12:53:14.5268961Z             },
2026-06-04T12:53:14.5269587Z             {
2026-06-04T12:53:14.5270397Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.5270840Z               "line": 94
2026-06-04T12:53:14.5271251Z             },
2026-06-04T12:53:14.5271671Z             {
2026-06-04T12:53:14.5272280Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:53:14.5272730Z               "line": 20
2026-06-04T12:53:14.5273156Z             },
2026-06-04T12:53:14.5273568Z             {
2026-06-04T12:53:14.5274184Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:53:14.5274619Z               "line": 30
2026-06-04T12:53:14.5275042Z             },
2026-06-04T12:53:14.5275450Z             {
2026-06-04T12:53:14.5276073Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:53:14.5276519Z               "line": 50
2026-06-04T12:53:14.5276938Z             },
2026-06-04T12:53:14.5277359Z             {
2026-06-04T12:53:14.5277958Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5278410Z               "line": 28
2026-06-04T12:53:14.5278837Z             },
2026-06-04T12:53:14.5279296Z             {
2026-06-04T12:53:14.5279901Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5280340Z               "line": 126
2026-06-04T12:53:14.5280768Z             },
2026-06-04T12:53:14.5281184Z             {
2026-06-04T12:53:14.5281774Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5282214Z               "line": 161
2026-06-04T12:53:14.5282637Z             },
2026-06-04T12:53:14.5283058Z             {
2026-06-04T12:53:14.5283638Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5284086Z               "line": 197
2026-06-04T12:53:14.5284510Z             },
2026-06-04T12:53:14.5285095Z             {
2026-06-04T12:53:14.5285746Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5286281Z               "line": 208
2026-06-04T12:53:14.5286884Z             },
2026-06-04T12:53:14.5287401Z             {
2026-06-04T12:53:14.5288102Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5288628Z               "line": 231
2026-06-04T12:53:14.5289109Z             },
2026-06-04T12:53:14.5289650Z             {
2026-06-04T12:53:14.5290347Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5290875Z               "line": 251
2026-06-04T12:53:14.5291397Z             },
2026-06-04T12:53:14.5291897Z             {
2026-06-04T12:53:14.5292585Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.5293082Z               "line": 63
2026-06-04T12:53:14.5293538Z             }
2026-06-04T12:53:14.5293985Z           ]
2026-06-04T12:53:14.5294477Z         },
2026-06-04T12:53:14.5294937Z         "int": {
2026-06-04T12:53:14.5295416Z           "complete": true,
2026-06-04T12:53:14.5295878Z           "evidence": [
2026-06-04T12:53:14.5296317Z             {
2026-06-04T12:53:14.5297309Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:53:14.5297784Z               "line": 265
2026-06-04T12:53:14.5298387Z             },
2026-06-04T12:53:14.5298831Z             {
2026-06-04T12:53:14.5299588Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T12:53:14.5300067Z               "line": 102
2026-06-04T12:53:14.5300503Z             }
2026-06-04T12:53:14.5300931Z           ]
2026-06-04T12:53:14.5301371Z         },
2026-06-04T12:53:14.5301818Z         "unit": {
2026-06-04T12:53:14.5302295Z           "complete": true,
2026-06-04T12:53:14.5302759Z           "evidence": [
2026-06-04T12:53:14.5303189Z             {
2026-06-04T12:53:14.5303826Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5304284Z               "line": 362
2026-06-04T12:53:14.5304724Z             },
2026-06-04T12:53:14.5305161Z             {
2026-06-04T12:53:14.5305772Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5306251Z               "line": 400
2026-06-04T12:53:14.5306686Z             },
2026-06-04T12:53:14.5307127Z             {
2026-06-04T12:53:14.5314039Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5314740Z               "line": 427
2026-06-04T12:53:14.5315202Z             },
2026-06-04T12:53:14.5315631Z             {
2026-06-04T12:53:14.5316267Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5316728Z               "line": 448
2026-06-04T12:53:14.5317175Z             },
2026-06-04T12:53:14.5317613Z             {
2026-06-04T12:53:14.5318225Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5318691Z               "line": 501
2026-06-04T12:53:14.5319117Z             },
2026-06-04T12:53:14.5319611Z             {
2026-06-04T12:53:14.5320226Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5320693Z               "line": 540
2026-06-04T12:53:14.5321131Z             },
2026-06-04T12:53:14.5321561Z             {
2026-06-04T12:53:14.5322207Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5322659Z               "line": 632
2026-06-04T12:53:14.5323101Z             },
2026-06-04T12:53:14.5323521Z             {
2026-06-04T12:53:14.5324189Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:53:14.5324654Z               "line": 133
2026-06-04T12:53:14.5325077Z             },
2026-06-04T12:53:14.5325509Z             {
2026-06-04T12:53:14.5326158Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:53:14.5326623Z               "line": 208
2026-06-04T12:53:14.5327049Z             },
2026-06-04T12:53:14.5327485Z             {
2026-06-04T12:53:14.5328150Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T12:53:14.5328613Z               "line": 227
2026-06-04T12:53:14.5329047Z             },
2026-06-04T12:53:14.5329509Z             {
2026-06-04T12:53:14.5330181Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.5330647Z               "line": 328
2026-06-04T12:53:14.5331084Z             },
2026-06-04T12:53:14.5331514Z             {
2026-06-04T12:53:14.5332172Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T12:53:14.5332640Z               "line": 357
2026-06-04T12:53:14.5333059Z             },
2026-06-04T12:53:14.5333495Z             {
2026-06-04T12:53:14.5334174Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-04T12:53:14.5334651Z               "line": 112
2026-06-04T12:53:14.5335078Z             },
2026-06-04T12:53:14.5335497Z             {
2026-06-04T12:53:14.5336134Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:53:14.5336584Z               "line": 72
2026-06-04T12:53:14.5337017Z             },
2026-06-04T12:53:14.5337438Z             {
2026-06-04T12:53:14.5338068Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T12:53:14.5338551Z               "line": 94
2026-06-04T12:53:14.5338981Z             },
2026-06-04T12:53:14.5339926Z             {
2026-06-04T12:53:14.5340527Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5341130Z               "line": 365
2026-06-04T12:53:14.5341559Z             },
2026-06-04T12:53:14.5341965Z             {
2026-06-04T12:53:14.5342553Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5342992Z               "line": 396
2026-06-04T12:53:14.5343415Z             },
2026-06-04T12:53:14.5343825Z             {
2026-06-04T12:53:14.5344414Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5344862Z               "line": 410
2026-06-04T12:53:14.5345277Z             },
2026-06-04T12:53:14.5345697Z             {
2026-06-04T12:53:14.5346276Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5346729Z               "line": 441
2026-06-04T12:53:14.5347140Z             },
2026-06-04T12:53:14.5347558Z             {
2026-06-04T12:53:14.5348146Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5348603Z               "line": 458
2026-06-04T12:53:14.5349031Z             },
2026-06-04T12:53:14.5349677Z             {
2026-06-04T12:53:14.5350435Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5350880Z               "line": 483
2026-06-04T12:53:14.5351302Z             },
2026-06-04T12:53:14.5351717Z             {
2026-06-04T12:53:14.5352299Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T12:53:14.5352748Z               "line": 507
2026-06-04T12:53:14.5353159Z             },
2026-06-04T12:53:14.5353582Z             {
2026-06-04T12:53:14.5354190Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.5354637Z               "line": 313
2026-06-04T12:53:14.5355108Z             }
2026-06-04T12:53:14.5355517Z           ]
2026-06-04T12:53:14.5355939Z         }
2026-06-04T12:53:14.5356346Z       }
2026-06-04T12:53:14.5356754Z     },
2026-06-04T12:53:14.5357154Z     {
2026-06-04T12:53:14.5357623Z       "id": "REQ-NOTIF-2",
2026-06-04T12:53:14.5359209Z       "title": "spt notify (agent-issued subnet notif) + notif_command manifest seam (harness + shell adapters)",
2026-06-04T12:53:14.5360038Z       "requiredStages": [
2026-06-04T12:53:14.5360463Z         "doc",
2026-06-04T12:53:14.5360880Z         "impl",
2026-06-04T12:53:14.5361299Z         "unit"
2026-06-04T12:53:14.5361709Z       ],
2026-06-04T12:53:14.5362139Z       "stages": {
2026-06-04T12:53:14.5362563Z         "doc": {
2026-06-04T12:53:14.5363011Z           "complete": true,
2026-06-04T12:53:14.5363451Z           "evidence": [
2026-06-04T12:53:14.5363862Z             {
2026-06-04T12:53:14.5364367Z               "path": "docs/MANIFEST.md",
2026-06-04T12:53:14.5364808Z               "line": 62
2026-06-04T12:53:14.5365227Z             }
2026-06-04T12:53:14.5365647Z           ]
2026-06-04T12:53:14.5366054Z         },
2026-06-04T12:53:14.5366481Z         "impl": {
2026-06-04T12:53:14.5366934Z           "complete": true,
2026-06-04T12:53:14.5367379Z           "evidence": [
2026-06-04T12:53:14.5367806Z             {
2026-06-04T12:53:14.5368423Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5368888Z               "line": 208
2026-06-04T12:53:14.5369343Z             },
2026-06-04T12:53:14.5369975Z             {
2026-06-04T12:53:14.5370721Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5371176Z               "line": 222
2026-06-04T12:53:14.5371585Z             },
2026-06-04T12:53:14.5372006Z             {
2026-06-04T12:53:14.5372661Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.5373100Z               "line": 125
2026-06-04T12:53:14.5373521Z             },
2026-06-04T12:53:14.5373928Z             {
2026-06-04T12:53:14.5374562Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.5374996Z               "line": 72
2026-06-04T12:53:14.5375418Z             },
2026-06-04T12:53:14.5375843Z             {
2026-06-04T12:53:14.5376370Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5377009Z               "line": 383
2026-06-04T12:53:14.5377427Z             },
2026-06-04T12:53:14.5377848Z             {
2026-06-04T12:53:14.5378518Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5378977Z               "line": 415
2026-06-04T12:53:14.5379617Z             },
2026-06-04T12:53:14.5380180Z             {
2026-06-04T12:53:14.5380709Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5381147Z               "line": 481
2026-06-04T12:53:14.5381578Z             },
2026-06-04T12:53:14.5381995Z             {
2026-06-04T12:53:14.5382538Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5382989Z               "line": 517
2026-06-04T12:53:14.5383410Z             }
2026-06-04T12:53:14.5383829Z           ]
2026-06-04T12:53:14.5384241Z         },
2026-06-04T12:53:14.5384673Z         "int": {
2026-06-04T12:53:14.5385140Z           "complete": false,
2026-06-04T12:53:14.5385600Z           "evidence": []
2026-06-04T12:53:14.5386023Z         },
2026-06-04T12:53:14.5386458Z         "unit": {
2026-06-04T12:53:14.5386927Z           "complete": true,
2026-06-04T12:53:14.5387370Z           "evidence": [
2026-06-04T12:53:14.5387803Z             {
2026-06-04T12:53:14.5388404Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.5388856Z               "line": 590
2026-06-04T12:53:14.5389335Z             },
2026-06-04T12:53:14.5389948Z             {
2026-06-04T12:53:14.5390833Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5391336Z               "line": 1129
2026-06-04T12:53:14.5391829Z             },
2026-06-04T12:53:14.5392429Z             {
2026-06-04T12:53:14.5392976Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5393429Z               "line": 1151
2026-06-04T12:53:14.5393841Z             }
2026-06-04T12:53:14.5394268Z           ]
2026-06-04T12:53:14.5400476Z         }
2026-06-04T12:53:14.5401062Z       }
2026-06-04T12:53:14.5401481Z     },
2026-06-04T12:53:14.5401900Z     {
2026-06-04T12:53:14.5402422Z       "id": "REQ-PAIR-1",
2026-06-04T12:53:14.5402965Z       "title": "TOTP-seeded SPAKE2 pairing",
2026-06-04T12:53:14.5403460Z       "requiredStages": [
2026-06-04T12:53:14.5403879Z         "impl",
2026-06-04T12:53:14.5404457Z         "unit"
2026-06-04T12:53:14.5405204Z       ],
2026-06-04T12:53:14.5406615Z       "stages": {
2026-06-04T12:53:14.5407699Z         "doc": {
2026-06-04T12:53:14.5408792Z           "complete": false,
2026-06-04T12:53:14.5410395Z           "evidence": []
2026-06-04T12:53:14.5411606Z         },
2026-06-04T12:53:14.5412822Z         "impl": {
2026-06-04T12:53:14.5414233Z           "complete": true,
2026-06-04T12:53:14.5415618Z           "evidence": [
2026-06-04T12:53:14.5416743Z             {
2026-06-04T12:53:14.5418361Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.5420382Z               "line": 27
2026-06-04T12:53:14.5421854Z             },
2026-06-04T12:53:14.5423004Z             {
2026-06-04T12:53:14.5424666Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.5426455Z               "line": 88
2026-06-04T12:53:14.5427682Z             },
2026-06-04T12:53:14.5428737Z             {
2026-06-04T12:53:14.5430511Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.5432364Z               "line": 110
2026-06-04T12:53:14.5433669Z             },
2026-06-04T12:53:14.5434756Z             {
2026-06-04T12:53:14.5436091Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.5437773Z               "line": 153
2026-06-04T12:53:14.5438934Z             },
2026-06-04T12:53:14.5440130Z             {
2026-06-04T12:53:14.5441383Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.5442961Z               "line": 182
2026-06-04T12:53:14.5444064Z             },
2026-06-04T12:53:14.5445045Z             {
2026-06-04T12:53:14.5446277Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:53:14.5447854Z               "line": 29
2026-06-04T12:53:14.5449388Z             },
2026-06-04T12:53:14.5450373Z             {
2026-06-04T12:53:14.5451688Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T12:53:14.5453604Z               "line": 31
2026-06-04T12:53:14.5454764Z             },
2026-06-04T12:53:14.5455743Z             {
2026-06-04T12:53:14.5456976Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5458545Z               "line": 40
2026-06-04T12:53:14.5459703Z             },
2026-06-04T12:53:14.5460687Z             {
2026-06-04T12:53:14.5461927Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5463504Z               "line": 131
2026-06-04T12:53:14.5464675Z             },
2026-06-04T12:53:14.5465661Z             {
2026-06-04T12:53:14.5466892Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5468490Z               "line": 306
2026-06-04T12:53:14.5469645Z             }
2026-06-04T12:53:14.5470627Z           ]
2026-06-04T12:53:14.5471569Z         },
2026-06-04T12:53:14.5472512Z         "int": {
2026-06-04T12:53:14.5473562Z           "complete": false,
2026-06-04T12:53:14.5474765Z           "evidence": []
2026-06-04T12:53:14.5475864Z         },
2026-06-04T12:53:14.5476850Z         "unit": {
2026-06-04T12:53:14.5477892Z           "complete": true,
2026-06-04T12:53:14.5479071Z           "evidence": [
2026-06-04T12:53:14.5480200Z             {
2026-06-04T12:53:14.5481435Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.5483019Z               "line": 236
2026-06-04T12:53:14.5484129Z             },
2026-06-04T12:53:14.5485099Z             {
2026-06-04T12:53:14.5486341Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T12:53:14.5487936Z               "line": 349
2026-06-04T12:53:14.5489045Z             },
2026-06-04T12:53:14.5490062Z             {
2026-06-04T12:53:14.5491284Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:53:14.5492873Z               "line": 194
2026-06-04T12:53:14.5501109Z             },
2026-06-04T12:53:14.5502360Z             {
2026-06-04T12:53:14.5503637Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:53:14.5505232Z               "line": 216
2026-06-04T12:53:14.5506337Z             },
2026-06-04T12:53:14.5507313Z             {
2026-06-04T12:53:14.5508531Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:53:14.5510190Z               "line": 230
2026-06-04T12:53:14.5511304Z             },
2026-06-04T12:53:14.5512294Z             {
2026-06-04T12:53:14.5513524Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:53:14.5515108Z               "line": 242
2026-06-04T12:53:14.5516217Z             },
2026-06-04T12:53:14.5517196Z             {
2026-06-04T12:53:14.5518430Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:53:14.5520036Z               "line": 256
2026-06-04T12:53:14.5521148Z             },
2026-06-04T12:53:14.5522152Z             {
2026-06-04T12:53:14.5523373Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:53:14.5524949Z               "line": 270
2026-06-04T12:53:14.5526055Z             },
2026-06-04T12:53:14.5527026Z             {
2026-06-04T12:53:14.5528233Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:53:14.5529841Z               "line": 277
2026-06-04T12:53:14.5530951Z             },
2026-06-04T12:53:14.5531938Z             {
2026-06-04T12:53:14.5533158Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T12:53:14.5534788Z               "line": 295
2026-06-04T12:53:14.5535890Z             },
2026-06-04T12:53:14.5536863Z             {
2026-06-04T12:53:14.5538081Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5539679Z               "line": 696
2026-06-04T12:53:14.5540779Z             },
2026-06-04T12:53:14.5541767Z             {
2026-06-04T12:53:14.5542991Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5544957Z               "line": 757
2026-06-04T12:53:14.5546322Z             },
2026-06-04T12:53:14.5547301Z             {
2026-06-04T12:53:14.5548520Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5550139Z               "line": 814
2026-06-04T12:53:14.5551236Z             },
2026-06-04T12:53:14.5552220Z             {
2026-06-04T12:53:14.5553437Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5554992Z               "line": 868
2026-06-04T12:53:14.5556094Z             },
2026-06-04T12:53:14.5557064Z             {
2026-06-04T12:53:14.5558280Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5559877Z               "line": 920
2026-06-04T12:53:14.5560982Z             },
2026-06-04T12:53:14.5561950Z             {
2026-06-04T12:53:14.5563182Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5564759Z               "line": 1084
2026-06-04T12:53:14.5565866Z             }
2026-06-04T12:53:14.5566830Z           ]
2026-06-04T12:53:14.5567784Z         }
2026-06-04T12:53:14.5568703Z       }
2026-06-04T12:53:14.5569644Z     },
2026-06-04T12:53:14.5570565Z     {
2026-06-04T12:53:14.5571538Z       "id": "REQ-PAIR-2",
2026-06-04T12:53:14.5572967Z       "title": "Local trust store with TOFU + warn-on-change",
2026-06-04T12:53:14.5574593Z       "requiredStages": [
2026-06-04T12:53:14.5575723Z         "impl",
2026-06-04T12:53:14.5576799Z         "unit"
2026-06-04T12:53:14.5577764Z       ],
2026-06-04T12:53:14.5578702Z       "stages": {
2026-06-04T12:53:14.5579749Z         "doc": {
2026-06-04T12:53:14.5580789Z           "complete": false,
2026-06-04T12:53:14.5581989Z           "evidence": []
2026-06-04T12:53:14.5583100Z         },
2026-06-04T12:53:14.5584048Z         "impl": {
2026-06-04T12:53:14.5585097Z           "complete": true,
2026-06-04T12:53:14.5586377Z           "evidence": [
2026-06-04T12:53:14.5587448Z             {
2026-06-04T12:53:14.5588596Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5590107Z               "line": 42
2026-06-04T12:53:14.5591215Z             },
2026-06-04T12:53:14.5592188Z             {
2026-06-04T12:53:14.5593314Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5594776Z               "line": 151
2026-06-04T12:53:14.5595880Z             },
2026-06-04T12:53:14.5596857Z             {
2026-06-04T12:53:14.5598102Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5605252Z               "line": 171
2026-06-04T12:53:14.5606429Z             },
2026-06-04T12:53:14.5607427Z             {
2026-06-04T12:53:14.5608562Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5610110Z               "line": 209
2026-06-04T12:53:14.5611211Z             },
2026-06-04T12:53:14.5612184Z             {
2026-06-04T12:53:14.5613319Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5614817Z               "line": 232
2026-06-04T12:53:14.5615915Z             }
2026-06-04T12:53:14.5616887Z           ]
2026-06-04T12:53:14.5617842Z         },
2026-06-04T12:53:14.5618797Z         "int": {
2026-06-04T12:53:14.5619874Z           "complete": false,
2026-06-04T12:53:14.5621064Z           "evidence": []
2026-06-04T12:53:14.5622151Z         },
2026-06-04T12:53:14.5623087Z         "unit": {
2026-06-04T12:53:14.5624120Z           "complete": true,
2026-06-04T12:53:14.5625273Z           "evidence": [
2026-06-04T12:53:14.5626357Z             {
2026-06-04T12:53:14.5627489Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5628941Z               "line": 253
2026-06-04T12:53:14.5630075Z             },
2026-06-04T12:53:14.5631051Z             {
2026-06-04T12:53:14.5632185Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5633647Z               "line": 272
2026-06-04T12:53:14.5634746Z             },
2026-06-04T12:53:14.5635724Z             {
2026-06-04T12:53:14.5637151Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5638605Z               "line": 284
2026-06-04T12:53:14.5639904Z             },
2026-06-04T12:53:14.5640926Z             {
2026-06-04T12:53:14.5642077Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5643524Z               "line": 303
2026-06-04T12:53:14.5644699Z             },
2026-06-04T12:53:14.5645667Z             {
2026-06-04T12:53:14.5646795Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5648240Z               "line": 319
2026-06-04T12:53:14.5649368Z             },
2026-06-04T12:53:14.5650337Z             {
2026-06-04T12:53:14.5651469Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5652918Z               "line": 331
2026-06-04T12:53:14.5654016Z             },
2026-06-04T12:53:14.5654984Z             {
2026-06-04T12:53:14.5656131Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5657576Z               "line": 343
2026-06-04T12:53:14.5658679Z             },
2026-06-04T12:53:14.5659685Z             {
2026-06-04T12:53:14.5660811Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5662270Z               "line": 356
2026-06-04T12:53:14.5663362Z             },
2026-06-04T12:53:14.5664330Z             {
2026-06-04T12:53:14.5665473Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T12:53:14.5666917Z               "line": 370
2026-06-04T12:53:14.5668004Z             }
2026-06-04T12:53:14.5668963Z           ]
2026-06-04T12:53:14.5669931Z         }
2026-06-04T12:53:14.5670868Z       }
2026-06-04T12:53:14.5671778Z     },
2026-06-04T12:53:14.5672690Z     {
2026-06-04T12:53:14.5673635Z       "id": "REQ-PAIR-3",
2026-06-04T12:53:14.5675112Z       "title": "Fetch current pairing code from any paired node",
2026-06-04T12:53:14.5676789Z       "requiredStages": [
2026-06-04T12:53:14.5677915Z         "impl",
2026-06-04T12:53:14.5678903Z         "unit"
2026-06-04T12:53:14.5679913Z       ],
2026-06-04T12:53:14.5680859Z       "stages": {
2026-06-04T12:53:14.5681861Z         "doc": {
2026-06-04T12:53:14.5682903Z           "complete": false,
2026-06-04T12:53:14.5684135Z           "evidence": []
2026-06-04T12:53:14.5685229Z         },
2026-06-04T12:53:14.5686170Z         "impl": {
2026-06-04T12:53:14.5687215Z           "complete": true,
2026-06-04T12:53:14.5688368Z           "evidence": [
2026-06-04T12:53:14.5689473Z             {
2026-06-04T12:53:14.5690550Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5691952Z               "line": 793
2026-06-04T12:53:14.5693057Z             },
2026-06-04T12:53:14.5694036Z             {
2026-06-04T12:53:14.5695117Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5696515Z               "line": 829
2026-06-04T12:53:14.5704771Z             },
2026-06-04T12:53:14.5706175Z             {
2026-06-04T12:53:14.5707274Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5708668Z               "line": 889
2026-06-04T12:53:14.5710213Z             }
2026-06-04T12:53:14.5711179Z           ]
2026-06-04T12:53:14.5712122Z         },
2026-06-04T12:53:14.5713074Z         "int": {
2026-06-04T12:53:14.5714110Z           "complete": false,
2026-06-04T12:53:14.5715286Z           "evidence": []
2026-06-04T12:53:14.5716376Z         },
2026-06-04T12:53:14.5717312Z         "unit": {
2026-06-04T12:53:14.5718351Z           "complete": true,
2026-06-04T12:53:14.5719544Z           "evidence": [
2026-06-04T12:53:14.5720619Z             {
2026-06-04T12:53:14.5721693Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5723071Z               "line": 1250
2026-06-04T12:53:14.5724179Z             },
2026-06-04T12:53:14.5725143Z             {
2026-06-04T12:53:14.5726218Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5727605Z               "line": 1267
2026-06-04T12:53:14.5728706Z             },
2026-06-04T12:53:14.5729728Z             {
2026-06-04T12:53:14.5730807Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5732561Z               "line": 1281
2026-06-04T12:53:14.5733678Z             },
2026-06-04T12:53:14.5734650Z             {
2026-06-04T12:53:14.5735894Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5737297Z               "line": 1297
2026-06-04T12:53:14.5738414Z             },
2026-06-04T12:53:14.5739439Z             {
2026-06-04T12:53:14.5740528Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5741919Z               "line": 1318
2026-06-04T12:53:14.5743033Z             },
2026-06-04T12:53:14.5743995Z             {
2026-06-04T12:53:14.5745069Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5746450Z               "line": 1334
2026-06-04T12:53:14.5747555Z             },
2026-06-04T12:53:14.5748524Z             {
2026-06-04T12:53:14.5750112Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5752224Z               "line": 1347
2026-06-04T12:53:14.5753538Z             },
2026-06-04T12:53:14.5754718Z             {
2026-06-04T12:53:14.5755960Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5757601Z               "line": 1356
2026-06-04T12:53:14.5758875Z             }
2026-06-04T12:53:14.5760194Z           ]
2026-06-04T12:53:14.5761189Z         }
2026-06-04T12:53:14.5762180Z       }
2026-06-04T12:53:14.5763180Z     },
2026-06-04T12:53:14.5764321Z     {
2026-06-04T12:53:14.5765537Z       "id": "REQ-PAIR-4",
2026-06-04T12:53:14.5767023Z       "title": "Subnet naming on first pairing",
2026-06-04T12:53:14.5768590Z       "requiredStages": [
2026-06-04T12:53:14.5769983Z         "impl",
2026-06-04T12:53:14.5771301Z         "unit"
2026-06-04T12:53:14.5772276Z       ],
2026-06-04T12:53:14.5773208Z       "stages": {
2026-06-04T12:53:14.5774227Z         "doc": {
2026-06-04T12:53:14.5775282Z           "complete": false,
2026-06-04T12:53:14.5776466Z           "evidence": []
2026-06-04T12:53:14.5777564Z         },
2026-06-04T12:53:14.5778512Z         "impl": {
2026-06-04T12:53:14.5779594Z           "complete": true,
2026-06-04T12:53:14.5780773Z           "evidence": [
2026-06-04T12:53:14.5781843Z             {
2026-06-04T12:53:14.5782993Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T12:53:14.5784490Z               "line": 154
2026-06-04T12:53:14.5785675Z             }
2026-06-04T12:53:14.5786639Z           ]
2026-06-04T12:53:14.5787568Z         },
2026-06-04T12:53:14.5788511Z         "int": {
2026-06-04T12:53:14.5789590Z           "complete": false,
2026-06-04T12:53:14.5790788Z           "evidence": []
2026-06-04T12:53:14.5791881Z         },
2026-06-04T12:53:14.5792816Z         "unit": {
2026-06-04T12:53:14.5793890Z           "complete": true,
2026-06-04T12:53:14.5795061Z           "evidence": [
2026-06-04T12:53:14.5796161Z             {
2026-06-04T12:53:14.5797388Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5806332Z               "line": 972
2026-06-04T12:53:14.5807534Z             }
2026-06-04T12:53:14.5808496Z           ]
2026-06-04T12:53:14.5809498Z         }
2026-06-04T12:53:14.5810456Z       }
2026-06-04T12:53:14.5811381Z     },
2026-06-04T12:53:14.5812290Z     {
2026-06-04T12:53:14.5813258Z       "id": "REQ-PAIR-5",
2026-06-04T12:53:14.5815670Z       "title": "Multi-subnet pairing: subnet-name discovery input, create-new-names-up-front, rendezvous-token hashing",
2026-06-04T12:53:14.5818297Z       "requiredStages": [
2026-06-04T12:53:14.5819474Z         "impl",
2026-06-04T12:53:14.5820471Z         "unit"
2026-06-04T12:53:14.5821451Z       ],
2026-06-04T12:53:14.5822406Z       "stages": {
2026-06-04T12:53:14.5823417Z         "doc": {
2026-06-04T12:53:14.5824456Z           "complete": false,
2026-06-04T12:53:14.5825643Z           "evidence": []
2026-06-04T12:53:14.5826736Z         },
2026-06-04T12:53:14.5827680Z         "impl": {
2026-06-04T12:53:14.5828724Z           "complete": true,
2026-06-04T12:53:14.5829920Z           "evidence": [
2026-06-04T12:53:14.5830994Z             {
2026-06-04T12:53:14.5832306Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:53:14.5834516Z               "line": 33
2026-06-04T12:53:14.5835602Z             },
2026-06-04T12:53:14.5836835Z             {
2026-06-04T12:53:14.5838140Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:53:14.5839840Z               "line": 45
2026-06-04T12:53:14.5840932Z             },
2026-06-04T12:53:14.5841905Z             {
2026-06-04T12:53:14.5843221Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:53:14.5844868Z               "line": 59
2026-06-04T12:53:14.5845959Z             },
2026-06-04T12:53:14.5846931Z             {
2026-06-04T12:53:14.5848144Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5849747Z               "line": 306
2026-06-04T12:53:14.5850849Z             }
2026-06-04T12:53:14.5851807Z           ]
2026-06-04T12:53:14.5852743Z         },
2026-06-04T12:53:14.5853693Z         "int": {
2026-06-04T12:53:14.5854735Z           "complete": false,
2026-06-04T12:53:14.5856044Z           "evidence": []
2026-06-04T12:53:14.5857135Z         },
2026-06-04T12:53:14.5858080Z         "unit": {
2026-06-04T12:53:14.5859131Z           "complete": true,
2026-06-04T12:53:14.5860337Z           "evidence": [
2026-06-04T12:53:14.5861404Z             {
2026-06-04T12:53:14.5862728Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:53:14.5864387Z               "line": 72
2026-06-04T12:53:14.5865482Z             },
2026-06-04T12:53:14.5866455Z             {
2026-06-04T12:53:14.5867761Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:53:14.5869453Z               "line": 82
2026-06-04T12:53:14.5870547Z             },
2026-06-04T12:53:14.5871517Z             {
2026-06-04T12:53:14.5872819Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:53:14.5874492Z               "line": 92
2026-06-04T12:53:14.5875592Z             },
2026-06-04T12:53:14.5876564Z             {
2026-06-04T12:53:14.5877882Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:53:14.5879570Z               "line": 102
2026-06-04T12:53:14.5880692Z             },
2026-06-04T12:53:14.5881666Z             {
2026-06-04T12:53:14.5882984Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T12:53:14.5884665Z               "line": 117
2026-06-04T12:53:14.5885762Z             },
2026-06-04T12:53:14.5886748Z             {
2026-06-04T12:53:14.5887969Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5889567Z               "line": 750
2026-06-04T12:53:14.5890669Z             },
2026-06-04T12:53:14.5891643Z             {
2026-06-04T12:53:14.5892869Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5894454Z               "line": 806
2026-06-04T12:53:14.5895547Z             },
2026-06-04T12:53:14.5896531Z             {
2026-06-04T12:53:14.5897743Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T12:53:14.5899358Z               "line": 1026
2026-06-04T12:53:14.5900479Z             }
2026-06-04T12:53:14.5901438Z           ]
2026-06-04T12:53:14.5902386Z         }
2026-06-04T12:53:14.5903391Z       }
2026-06-04T12:53:14.5911127Z     },
2026-06-04T12:53:14.5912426Z     {
2026-06-04T12:53:14.5913389Z       "id": "REQ-PAIR-6",
2026-06-04T12:53:14.5915581Z       "title": "Elevation-gated per-subnet code fetch (UAC/root or elevated agent; else authenticator app)",
2026-06-04T12:53:14.5917971Z       "requiredStages": [
2026-06-04T12:53:14.5919101Z         "impl",
2026-06-04T12:53:14.5920178Z         "unit"
2026-06-04T12:53:14.5921145Z       ],
2026-06-04T12:53:14.5922091Z       "stages": {
2026-06-04T12:53:14.5923095Z         "doc": {
2026-06-04T12:53:14.5924135Z           "complete": false,
2026-06-04T12:53:14.5925315Z           "evidence": []
2026-06-04T12:53:14.5926400Z         },
2026-06-04T12:53:14.5927341Z         "impl": {
2026-06-04T12:53:14.5928378Z           "complete": true,
2026-06-04T12:53:14.5929952Z           "evidence": [
2026-06-04T12:53:14.5931040Z             {
2026-06-04T12:53:14.5932114Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5933667Z               "line": 829
2026-06-04T12:53:14.5934776Z             },
2026-06-04T12:53:14.5935800Z             {
2026-06-04T12:53:14.5936865Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5938265Z               "line": 889
2026-06-04T12:53:14.5939413Z             },
2026-06-04T12:53:14.5940394Z             {
2026-06-04T12:53:14.5941521Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T12:53:14.5942972Z               "line": 18
2026-06-04T12:53:14.5944059Z             },
2026-06-04T12:53:14.5945028Z             {
2026-06-04T12:53:14.5946142Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T12:53:14.5947586Z               "line": 49
2026-06-04T12:53:14.5948673Z             },
2026-06-04T12:53:14.5949674Z             {
2026-06-04T12:53:14.5950809Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T12:53:14.5952276Z               "line": 70
2026-06-04T12:53:14.5953368Z             }
2026-06-04T12:53:14.5954343Z           ]
2026-06-04T12:53:14.5955274Z         },
2026-06-04T12:53:14.5956270Z         "int": {
2026-06-04T12:53:14.5957312Z           "complete": false,
2026-06-04T12:53:14.5958502Z           "evidence": []
2026-06-04T12:53:14.5959632Z         },
2026-06-04T12:53:14.5960573Z         "unit": {
2026-06-04T12:53:14.5961614Z           "complete": true,
2026-06-04T12:53:14.5962773Z           "evidence": [
2026-06-04T12:53:14.5963832Z             {
2026-06-04T12:53:14.5964918Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5966308Z               "line": 1369
2026-06-04T12:53:14.5967415Z             },
2026-06-04T12:53:14.5968377Z             {
2026-06-04T12:53:14.5969499Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.5970891Z               "line": 1386
2026-06-04T12:53:14.5971998Z             },
2026-06-04T12:53:14.5972963Z             {
2026-06-04T12:53:14.5974093Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T12:53:14.5975529Z               "line": 132
2026-06-04T12:53:14.5976636Z             },
2026-06-04T12:53:14.5977602Z             {
2026-06-04T12:53:14.5978715Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T12:53:14.5980196Z               "line": 141
2026-06-04T12:53:14.5981287Z             }
2026-06-04T12:53:14.5982245Z           ]
2026-06-04T12:53:14.5983176Z         }
2026-06-04T12:53:14.5984091Z       }
2026-06-04T12:53:14.5984991Z     },
2026-06-04T12:53:14.5985899Z     {
2026-06-04T12:53:14.5986846Z       "id": "REQ-PAIR-7",
2026-06-04T12:53:14.5988389Z       "title": "Subnet icon (inline image metadata, GUI-only consumer)",
2026-06-04T12:53:14.5990237Z       "requiredStages": [],
2026-06-04T12:53:14.5991388Z       "stages": {
2026-06-04T12:53:14.5992390Z         "doc": {
2026-06-04T12:53:14.5993424Z           "complete": false,
2026-06-04T12:53:14.5994601Z           "evidence": []
2026-06-04T12:53:14.5995703Z         },
2026-06-04T12:53:14.5996638Z         "impl": {
2026-06-04T12:53:14.5997682Z           "complete": false,
2026-06-04T12:53:14.5998887Z           "evidence": []
2026-06-04T12:53:14.6000030Z         },
2026-06-04T12:53:14.6000981Z         "int": {
2026-06-04T12:53:14.6002016Z           "complete": false,
2026-06-04T12:53:14.6003197Z           "evidence": []
2026-06-04T12:53:14.6004284Z         },
2026-06-04T12:53:14.6011443Z         "unit": {
2026-06-04T12:53:14.6012577Z           "complete": false,
2026-06-04T12:53:14.6013766Z           "evidence": []
2026-06-04T12:53:14.6014875Z         }
2026-06-04T12:53:14.6015795Z       }
2026-06-04T12:53:14.6016700Z     },
2026-06-04T12:53:14.6017611Z     {
2026-06-04T12:53:14.6018558Z       "id": "REQ-REACH-1",
2026-06-04T12:53:14.6020084Z       "title": "Off-node remote-drive detection + file transfer",
2026-06-04T12:53:14.6021767Z       "requiredStages": [
2026-06-04T12:53:14.6022891Z         "impl",
2026-06-04T12:53:14.6023886Z         "unit"
2026-06-04T12:53:14.6025235Z       ],
2026-06-04T12:53:14.6026167Z       "stages": {
2026-06-04T12:53:14.6027166Z         "doc": {
2026-06-04T12:53:14.6028362Z           "complete": false,
2026-06-04T12:53:14.6029595Z           "evidence": []
2026-06-04T12:53:14.6030696Z         },
2026-06-04T12:53:14.6031645Z         "impl": {
2026-06-04T12:53:14.6032682Z           "complete": true,
2026-06-04T12:53:14.6033841Z           "evidence": [
2026-06-04T12:53:14.6034921Z             {
2026-06-04T12:53:14.6036160Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T12:53:14.6037644Z               "line": 133
2026-06-04T12:53:14.6038742Z             },
2026-06-04T12:53:14.6039757Z             {
2026-06-04T12:53:14.6040901Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:53:14.6041344Z               "line": 76
2026-06-04T12:53:14.6041755Z             },
2026-06-04T12:53:14.6042174Z             {
2026-06-04T12:53:14.6042764Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:53:14.6043215Z               "line": 209
2026-06-04T12:53:14.6043636Z             },
2026-06-04T12:53:14.6044156Z             {
2026-06-04T12:53:14.6044757Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:53:14.6045194Z               "line": 386
2026-06-04T12:53:14.6045615Z             },
2026-06-04T12:53:14.6046033Z             {
2026-06-04T12:53:14.6046616Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:53:14.6047058Z               "line": 484
2026-06-04T12:53:14.6047470Z             },
2026-06-04T12:53:14.6047887Z             {
2026-06-04T12:53:14.6048470Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T12:53:14.6048918Z               "line": 39
2026-06-04T12:53:14.6049373Z             },
2026-06-04T12:53:14.6049781Z             {
2026-06-04T12:53:14.6050364Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.6050801Z               "line": 176
2026-06-04T12:53:14.6051221Z             },
2026-06-04T12:53:14.6051646Z             {
2026-06-04T12:53:14.6052231Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T12:53:14.6052682Z               "line": 82
2026-06-04T12:53:14.6053089Z             },
2026-06-04T12:53:14.6053510Z             {
2026-06-04T12:53:14.6054083Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T12:53:14.6054523Z               "line": 92
2026-06-04T12:53:14.6054931Z             },
2026-06-04T12:53:14.6055425Z             {
2026-06-04T12:53:14.6056039Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.6056472Z               "line": 177
2026-06-04T12:53:14.6056887Z             }
2026-06-04T12:53:14.6057290Z           ]
2026-06-04T12:53:14.6057705Z         },
2026-06-04T12:53:14.6058113Z         "int": {
2026-06-04T12:53:14.6058568Z           "complete": true,
2026-06-04T12:53:14.6059013Z           "evidence": [
2026-06-04T12:53:14.6059456Z             {
2026-06-04T12:53:14.6060109Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:53:14.6060557Z               "line": 375
2026-06-04T12:53:14.6060978Z             },
2026-06-04T12:53:14.6061387Z             {
2026-06-04T12:53:14.6062044Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:53:14.6062492Z               "line": 478
2026-06-04T12:53:14.6062903Z             }
2026-06-04T12:53:14.6063323Z           ]
2026-06-04T12:53:14.6063733Z         },
2026-06-04T12:53:14.6064153Z         "unit": {
2026-06-04T12:53:14.6064601Z           "complete": true,
2026-06-04T12:53:14.6065043Z           "evidence": [
2026-06-04T12:53:14.6065454Z             {
2026-06-04T12:53:14.6066034Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:53:14.6066480Z               "line": 585
2026-06-04T12:53:14.6066891Z             },
2026-06-04T12:53:14.6067309Z             {
2026-06-04T12:53:14.6067926Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T12:53:14.6068726Z               "line": 606
2026-06-04T12:53:14.6069412Z             },
2026-06-04T12:53:14.6070159Z             {
2026-06-04T12:53:14.6070944Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T12:53:14.6071673Z               "line": 337
2026-06-04T12:53:14.6072454Z             },
2026-06-04T12:53:14.6072964Z             {
2026-06-04T12:53:14.6073810Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T12:53:14.6074480Z               "line": 92
2026-06-04T12:53:14.6075002Z             },
2026-06-04T12:53:14.6075640Z             {
2026-06-04T12:53:14.6076313Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T12:53:14.6076810Z               "line": 176
2026-06-04T12:53:14.6077248Z             },
2026-06-04T12:53:14.6077671Z             {
2026-06-04T12:53:14.6078307Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T12:53:14.6078931Z               "line": 92
2026-06-04T12:53:14.6079513Z             },
2026-06-04T12:53:14.6080022Z             {
2026-06-04T12:53:14.6080816Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T12:53:14.6081310Z               "line": 123
2026-06-04T12:53:14.6081724Z             },
2026-06-04T12:53:14.6082160Z             {
2026-06-04T12:53:14.6082737Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.6083521Z               "line": 367
2026-06-04T12:53:14.6083949Z             },
2026-06-04T12:53:14.6084370Z             {
2026-06-04T12:53:14.6084996Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T12:53:14.6085437Z               "line": 112
2026-06-04T12:53:14.6085862Z             },
2026-06-04T12:53:14.6086270Z             {
2026-06-04T12:53:14.6086925Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T12:53:14.6087367Z               "line": 136
2026-06-04T12:53:14.6087791Z             },
2026-06-04T12:53:14.6088209Z             {
2026-06-04T12:53:14.6088825Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.6089462Z               "line": 396
2026-06-04T12:53:14.6090041Z             }
2026-06-04T12:53:14.6090475Z           ]
2026-06-04T12:53:14.6090888Z         }
2026-06-04T12:53:14.6091310Z       }
2026-06-04T12:53:14.6091737Z     },
2026-06-04T12:53:14.6092146Z     {
2026-06-04T12:53:14.6092603Z       "id": "REQ-REACH-2",
2026-06-04T12:53:14.6093417Z       "title": "Remote command execution (deferred, consent-gated)",
2026-06-04T12:53:14.6093902Z       "requiredStages": [],
2026-06-04T12:53:14.6094329Z       "stages": {
2026-06-04T12:53:14.6094756Z         "doc": {
2026-06-04T12:53:14.6095222Z           "complete": false,
2026-06-04T12:53:14.6095665Z           "evidence": []
2026-06-04T12:53:14.6103617Z         },
2026-06-04T12:53:14.6104233Z         "impl": {
2026-06-04T12:53:14.6104707Z           "complete": false,
2026-06-04T12:53:14.6105151Z           "evidence": []
2026-06-04T12:53:14.6105573Z         },
2026-06-04T12:53:14.6106028Z         "int": {
2026-06-04T12:53:14.6106487Z           "complete": false,
2026-06-04T12:53:14.6106940Z           "evidence": []
2026-06-04T12:53:14.6107348Z         },
2026-06-04T12:53:14.6107804Z         "unit": {
2026-06-04T12:53:14.6108259Z           "complete": false,
2026-06-04T12:53:14.6108718Z           "evidence": []
2026-06-04T12:53:14.6109135Z         }
2026-06-04T12:53:14.6109601Z       }
2026-06-04T12:53:14.6110012Z     },
2026-06-04T12:53:14.6110421Z     {
2026-06-04T12:53:14.6110952Z       "id": "REQ-SEAM-ACTIVITY",
2026-06-04T12:53:14.6111953Z       "title": "Activity/idle reported via api sentinels, not PTY quiescence",
2026-06-04T12:53:14.6112434Z       "requiredStages": [
2026-06-04T12:53:14.6112867Z         "impl",
2026-06-04T12:53:14.6113281Z         "unit"
2026-06-04T12:53:14.6113699Z       ],
2026-06-04T12:53:14.6114118Z       "stages": {
2026-06-04T12:53:14.6114539Z         "doc": {
2026-06-04T12:53:14.6114994Z           "complete": false,
2026-06-04T12:53:14.6115447Z           "evidence": []
2026-06-04T12:53:14.6115865Z         },
2026-06-04T12:53:14.6116285Z         "impl": {
2026-06-04T12:53:14.6116745Z           "complete": true,
2026-06-04T12:53:14.6117673Z           "evidence": [
2026-06-04T12:53:14.6118100Z             {
2026-06-04T12:53:14.6118700Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.6119358Z               "line": 18
2026-06-04T12:53:14.6119797Z             },
2026-06-04T12:53:14.6120207Z             {
2026-06-04T12:53:14.6120805Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.6121238Z               "line": 35
2026-06-04T12:53:14.6121657Z             },
2026-06-04T12:53:14.6122062Z             {
2026-06-04T12:53:14.6122660Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.6123097Z               "line": 65
2026-06-04T12:53:14.6123507Z             }
2026-06-04T12:53:14.6123928Z           ]
2026-06-04T12:53:14.6124335Z         },
2026-06-04T12:53:14.6124762Z         "int": {
2026-06-04T12:53:14.6125218Z           "complete": false,
2026-06-04T12:53:14.6125671Z           "evidence": []
2026-06-04T12:53:14.6126085Z         },
2026-06-04T12:53:14.6126517Z         "unit": {
2026-06-04T12:53:14.6126977Z           "complete": true,
2026-06-04T12:53:14.6127412Z           "evidence": [
2026-06-04T12:53:14.6127841Z             {
2026-06-04T12:53:14.6128434Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.6128884Z               "line": 170
2026-06-04T12:53:14.6129336Z             },
2026-06-04T12:53:14.6129745Z             {
2026-06-04T12:53:14.6130347Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.6130783Z               "line": 184
2026-06-04T12:53:14.6131207Z             },
2026-06-04T12:53:14.6131613Z             {
2026-06-04T12:53:14.6132205Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.6132653Z               "line": 193
2026-06-04T12:53:14.6133065Z             }
2026-06-04T12:53:14.6133481Z           ]
2026-06-04T12:53:14.6133891Z         }
2026-06-04T12:53:14.6134310Z       }
2026-06-04T12:53:14.6134715Z     },
2026-06-04T12:53:14.6135139Z     {
2026-06-04T12:53:14.6135648Z       "id": "REQ-SEAM-CAPABILITY",
2026-06-04T12:53:14.6136425Z       "title": "Hostable endpoint-types capability declaration",
2026-06-04T12:53:14.6136915Z       "requiredStages": [
2026-06-04T12:53:14.6137333Z         "impl",
2026-06-04T12:53:14.6137758Z         "unit"
2026-06-04T12:53:14.6138167Z       ],
2026-06-04T12:53:14.6138601Z       "stages": {
2026-06-04T12:53:14.6139018Z         "doc": {
2026-06-04T12:53:14.6139510Z           "complete": false,
2026-06-04T12:53:14.6139965Z           "evidence": []
2026-06-04T12:53:14.6140378Z         },
2026-06-04T12:53:14.6140808Z         "impl": {
2026-06-04T12:53:14.6141260Z           "complete": true,
2026-06-04T12:53:14.6141704Z           "evidence": [
2026-06-04T12:53:14.6142128Z             {
2026-06-04T12:53:14.6142743Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.6143195Z               "line": 262
2026-06-04T12:53:14.6143603Z             }
2026-06-04T12:53:14.6144022Z           ]
2026-06-04T12:53:14.6144426Z         },
2026-06-04T12:53:14.6144860Z         "int": {
2026-06-04T12:53:14.6145326Z           "complete": false,
2026-06-04T12:53:14.6145826Z           "evidence": []
2026-06-04T12:53:14.6146249Z         },
2026-06-04T12:53:14.6146668Z         "unit": {
2026-06-04T12:53:14.6147129Z           "complete": true,
2026-06-04T12:53:14.6147561Z           "evidence": [
2026-06-04T12:53:14.6147982Z             {
2026-06-04T12:53:14.6148603Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.6149042Z               "line": 429
2026-06-04T12:53:14.6149500Z             }
2026-06-04T12:53:14.6149910Z           ]
2026-06-04T12:53:14.6150323Z         }
2026-06-04T12:53:14.6150729Z       }
2026-06-04T12:53:14.6151141Z     },
2026-06-04T12:53:14.6151557Z     {
2026-06-04T12:53:14.6152020Z       "id": "REQ-SEAM-HISTORY",
2026-06-04T12:53:14.6152999Z       "title": "History subsystem (fetcher / locate-normalize / native store)",
2026-06-04T12:53:14.6153542Z       "requiredStages": [
2026-06-04T12:53:14.6154163Z         "impl",
2026-06-04T12:53:14.6154581Z         "unit",
2026-06-04T12:53:14.6155006Z         "int"
2026-06-04T12:53:14.6155556Z       ],
2026-06-04T12:53:14.6155983Z       "stages": {
2026-06-04T12:53:14.6156411Z         "doc": {
2026-06-04T12:53:14.6156867Z           "complete": false,
2026-06-04T12:53:14.6157315Z           "evidence": []
2026-06-04T12:53:14.6157726Z         },
2026-06-04T12:53:14.6158157Z         "impl": {
2026-06-04T12:53:14.6158613Z           "complete": true,
2026-06-04T12:53:14.6159046Z           "evidence": [
2026-06-04T12:53:14.6159513Z             {
2026-06-04T12:53:14.6160084Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:53:14.6160526Z               "line": 24
2026-06-04T12:53:14.6160937Z             },
2026-06-04T12:53:14.6161354Z             {
2026-06-04T12:53:14.6161956Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:53:14.6162395Z               "line": 22
2026-06-04T12:53:14.6162813Z             }
2026-06-04T12:53:14.6163221Z           ]
2026-06-04T12:53:14.6163648Z         },
2026-06-04T12:53:14.6164065Z         "int": {
2026-06-04T12:53:14.6164534Z           "complete": true,
2026-06-04T12:53:14.6164988Z           "evidence": [
2026-06-04T12:53:14.6165402Z             {
2026-06-04T12:53:14.6166020Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:53:14.6166464Z               "line": 202
2026-06-04T12:53:14.6166890Z             }
2026-06-04T12:53:14.6167297Z           ]
2026-06-04T12:53:14.6167715Z         },
2026-06-04T12:53:14.6168146Z         "unit": {
2026-06-04T12:53:14.6168603Z           "complete": true,
2026-06-04T12:53:14.6169051Z           "evidence": [
2026-06-04T12:53:14.6169502Z             {
2026-06-04T12:53:14.6170076Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:53:14.6170514Z               "line": 163
2026-06-04T12:53:14.6170937Z             },
2026-06-04T12:53:14.6171357Z             {
2026-06-04T12:53:14.6171911Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:53:14.6172366Z               "line": 186
2026-06-04T12:53:14.6172774Z             },
2026-06-04T12:53:14.6173197Z             {
2026-06-04T12:53:14.6173766Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T12:53:14.6174218Z               "line": 195
2026-06-04T12:53:14.6174645Z             },
2026-06-04T12:53:14.6175056Z             {
2026-06-04T12:53:14.6175693Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:53:14.6176321Z               "line": 195
2026-06-04T12:53:14.6176796Z             },
2026-06-04T12:53:14.6177278Z             {
2026-06-04T12:53:14.6177968Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:53:14.6178454Z               "line": 209
2026-06-04T12:53:14.6179020Z             },
2026-06-04T12:53:14.6187467Z             {
2026-06-04T12:53:14.6188326Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:53:14.6188817Z               "line": 228
2026-06-04T12:53:14.6189392Z             },
2026-06-04T12:53:14.6189913Z             {
2026-06-04T12:53:14.6190670Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:53:14.6191130Z               "line": 248
2026-06-04T12:53:14.6191555Z             },
2026-06-04T12:53:14.6191959Z             {
2026-06-04T12:53:14.6192548Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:53:14.6192999Z               "line": 264
2026-06-04T12:53:14.6193407Z             },
2026-06-04T12:53:14.6193823Z             {
2026-06-04T12:53:14.6194408Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T12:53:14.6194855Z               "line": 279
2026-06-04T12:53:14.6195270Z             }
2026-06-04T12:53:14.6195683Z           ]
2026-06-04T12:53:14.6196204Z         }
2026-06-04T12:53:14.6196776Z       }
2026-06-04T12:53:14.6197231Z     },
2026-06-04T12:53:14.6197662Z     {
2026-06-04T12:53:14.6198168Z       "id": "REQ-SEAM-INJECT",
2026-06-04T12:53:14.6199062Z       "title": "inject-input methods configurable per activity-state",
2026-06-04T12:53:14.6200184Z       "requiredStages": [
2026-06-04T12:53:14.6200621Z         "impl",
2026-06-04T12:53:14.6201044Z         "unit"
2026-06-04T12:53:14.6201624Z       ],
2026-06-04T12:53:14.6202047Z       "stages": {
2026-06-04T12:53:14.6202480Z         "doc": {
2026-06-04T12:53:14.6202937Z           "complete": false,
2026-06-04T12:53:14.6203393Z           "evidence": []
2026-06-04T12:53:14.6203803Z         },
2026-06-04T12:53:14.6204236Z         "impl": {
2026-06-04T12:53:14.6204692Z           "complete": true,
2026-06-04T12:53:14.6205131Z           "evidence": [
2026-06-04T12:53:14.6205558Z             {
2026-06-04T12:53:14.6206155Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.6206607Z               "line": 19
2026-06-04T12:53:14.6207028Z             },
2026-06-04T12:53:14.6207440Z             {
2026-06-04T12:53:14.6208204Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.6208694Z               "line": 104
2026-06-04T12:53:14.6209152Z             }
2026-06-04T12:53:14.6209822Z           ]
2026-06-04T12:53:14.6210242Z         },
2026-06-04T12:53:14.6210660Z         "int": {
2026-06-04T12:53:14.6211149Z           "complete": false,
2026-06-04T12:53:14.6211600Z           "evidence": []
2026-06-04T12:53:14.6212019Z         },
2026-06-04T12:53:14.6212448Z         "unit": {
2026-06-04T12:53:14.6212893Z           "complete": true,
2026-06-04T12:53:14.6213338Z           "evidence": [
2026-06-04T12:53:14.6213752Z             {
2026-06-04T12:53:14.6214362Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.6214807Z               "line": 222
2026-06-04T12:53:14.6215223Z             },
2026-06-04T12:53:14.6215794Z             {
2026-06-04T12:53:14.6216448Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T12:53:14.6216932Z               "line": 236
2026-06-04T12:53:14.6217371Z             }
2026-06-04T12:53:14.6217801Z           ]
2026-06-04T12:53:14.6218237Z         }
2026-06-04T12:53:14.6218662Z       }
2026-06-04T12:53:14.6219101Z     },
2026-06-04T12:53:14.6219574Z     {
2026-06-04T12:53:14.6220225Z       "id": "REQ-SEAM-POSTSPAWN",
2026-06-04T12:53:14.6220941Z       "title": "post-spawn / api bind seam with boot nonce",
2026-06-04T12:53:14.6221424Z       "requiredStages": [
2026-06-04T12:53:14.6221854Z         "impl",
2026-06-04T12:53:14.6222268Z         "unit"
2026-06-04T12:53:14.6222686Z       ],
2026-06-04T12:53:14.6223109Z       "stages": {
2026-06-04T12:53:14.6223534Z         "doc": {
2026-06-04T12:53:14.6223989Z           "complete": false,
2026-06-04T12:53:14.6224443Z           "evidence": []
2026-06-04T12:53:14.6224868Z         },
2026-06-04T12:53:14.6225289Z         "impl": {
2026-06-04T12:53:14.6225751Z           "complete": true,
2026-06-04T12:53:14.6226186Z           "evidence": [
2026-06-04T12:53:14.6226610Z             {
2026-06-04T12:53:14.6227193Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6227645Z               "line": 18
2026-06-04T12:53:14.6228070Z             },
2026-06-04T12:53:14.6228490Z             {
2026-06-04T12:53:14.6229086Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6229915Z               "line": 263
2026-06-04T12:53:14.6230348Z             }
2026-06-04T12:53:14.6230773Z           ]
2026-06-04T12:53:14.6231179Z         },
2026-06-04T12:53:14.6231600Z         "int": {
2026-06-04T12:53:14.6232057Z           "complete": false,
2026-06-04T12:53:14.6232509Z           "evidence": []
2026-06-04T12:53:14.6232918Z         },
2026-06-04T12:53:14.6233345Z         "unit": {
2026-06-04T12:53:14.6233801Z           "complete": true,
2026-06-04T12:53:14.6234253Z           "evidence": [
2026-06-04T12:53:14.6234670Z             {
2026-06-04T12:53:14.6235254Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6235707Z               "line": 429
2026-06-04T12:53:14.6236121Z             },
2026-06-04T12:53:14.6236539Z             {
2026-06-04T12:53:14.6237131Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6237815Z               "line": 439
2026-06-04T12:53:14.6238239Z             }
2026-06-04T12:53:14.6238651Z           ]
2026-06-04T12:53:14.6239301Z         }
2026-06-04T12:53:14.6239735Z       }
2026-06-04T12:53:14.6240185Z     },
2026-06-04T12:53:14.6240593Z     {
2026-06-04T12:53:14.6241082Z       "id": "REQ-SEAM-PSYCHE",
2026-06-04T12:53:14.6241835Z       "title": "spawn-psyche seam (fresh + resume templates)",
2026-06-04T12:53:14.6242309Z       "requiredStages": [
2026-06-04T12:53:14.6242738Z         "impl",
2026-06-04T12:53:14.6243162Z         "unit",
2026-06-04T12:53:14.6243585Z         "int"
2026-06-04T12:53:14.6243996Z       ],
2026-06-04T12:53:14.6244433Z       "stages": {
2026-06-04T12:53:14.6244860Z         "doc": {
2026-06-04T12:53:14.6245318Z           "complete": false,
2026-06-04T12:53:14.6245771Z           "evidence": []
2026-06-04T12:53:14.6246183Z         },
2026-06-04T12:53:14.6246613Z         "impl": {
2026-06-04T12:53:14.6247059Z           "complete": true,
2026-06-04T12:53:14.6247510Z           "evidence": [
2026-06-04T12:53:14.6247947Z             {
2026-06-04T12:53:14.6248528Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T12:53:14.6248981Z               "line": 19
2026-06-04T12:53:14.6249441Z             },
2026-06-04T12:53:14.6249871Z             {
2026-06-04T12:53:14.6250428Z               "path": "crates/spt/src/api/live.rs",
2026-06-04T12:53:14.6250884Z               "line": 12
2026-06-04T12:53:14.6251308Z             },
2026-06-04T12:53:14.6251719Z             {
2026-06-04T12:53:14.6252311Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6252746Z               "line": 164
2026-06-04T12:53:14.6253169Z             }
2026-06-04T12:53:14.6253587Z           ]
2026-06-04T12:53:14.6253999Z         },
2026-06-04T12:53:14.6254425Z         "int": {
2026-06-04T12:53:14.6254884Z           "complete": true,
2026-06-04T12:53:14.6255419Z           "evidence": [
2026-06-04T12:53:14.6255831Z             {
2026-06-04T12:53:14.6256447Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:53:14.6256908Z               "line": 201
2026-06-04T12:53:14.6257322Z             }
2026-06-04T12:53:14.6257749Z           ]
2026-06-04T12:53:14.6258158Z         },
2026-06-04T12:53:14.6258578Z         "unit": {
2026-06-04T12:53:14.6259025Z           "complete": true,
2026-06-04T12:53:14.6259518Z           "evidence": [
2026-06-04T12:53:14.6259941Z             {
2026-06-04T12:53:14.6260538Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T12:53:14.6260991Z               "line": 161
2026-06-04T12:53:14.6261408Z             },
2026-06-04T12:53:14.6261827Z             {
2026-06-04T12:53:14.6262412Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T12:53:14.6262861Z               "line": 168
2026-06-04T12:53:14.6263285Z             },
2026-06-04T12:53:14.6263697Z             {
2026-06-04T12:53:14.6264289Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T12:53:14.6264723Z               "line": 191
2026-06-04T12:53:14.6265157Z             },
2026-06-04T12:53:14.6272534Z             {
2026-06-04T12:53:14.6273335Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T12:53:14.6273842Z               "line": 106
2026-06-04T12:53:14.6274261Z             },
2026-06-04T12:53:14.6274683Z             {
2026-06-04T12:53:14.6275260Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T12:53:14.6275709Z               "line": 123
2026-06-04T12:53:14.6276122Z             },
2026-06-04T12:53:14.6276546Z             {
2026-06-04T12:53:14.6277133Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T12:53:14.6277572Z               "line": 137
2026-06-04T12:53:14.6278001Z             }
2026-06-04T12:53:14.6278406Z           ]
2026-06-04T12:53:14.6278824Z         }
2026-06-04T12:53:14.6279293Z       }
2026-06-04T12:53:14.6279715Z     },
2026-06-04T12:53:14.6280133Z     {
2026-06-04T12:53:14.6280599Z       "id": "REQ-SEAM-RESUME",
2026-06-04T12:53:14.6281602Z       "title": "resume-session seam (fresh-with-preload / continue-existing)",
2026-06-04T12:53:14.6282369Z       "requiredStages": [
2026-06-04T12:53:14.6282801Z         "impl",
2026-06-04T12:53:14.6283370Z         "unit"
2026-06-04T12:53:14.6283799Z       ],
2026-06-04T12:53:14.6284235Z       "stages": {
2026-06-04T12:53:14.6284650Z         "doc": {
2026-06-04T12:53:14.6285119Z           "complete": false,
2026-06-04T12:53:14.6285568Z           "evidence": []
2026-06-04T12:53:14.6285994Z         },
2026-06-04T12:53:14.6286409Z         "impl": {
2026-06-04T12:53:14.6286874Z           "complete": true,
2026-06-04T12:53:14.6287319Z           "evidence": [
2026-06-04T12:53:14.6287730Z             {
2026-06-04T12:53:14.6288323Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:53:14.6288761Z               "line": 19
2026-06-04T12:53:14.6289234Z             }
2026-06-04T12:53:14.6289651Z           ]
2026-06-04T12:53:14.6290072Z         },
2026-06-04T12:53:14.6290500Z         "int": {
2026-06-04T12:53:14.6290957Z           "complete": false,
2026-06-04T12:53:14.6291430Z           "evidence": []
2026-06-04T12:53:14.6291843Z         },
2026-06-04T12:53:14.6292275Z         "unit": {
2026-06-04T12:53:14.6292746Z           "complete": true,
2026-06-04T12:53:14.6293194Z           "evidence": [
2026-06-04T12:53:14.6293613Z             {
2026-06-04T12:53:14.6294199Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:53:14.6294653Z               "line": 168
2026-06-04T12:53:14.6295067Z             },
2026-06-04T12:53:14.6295485Z             {
2026-06-04T12:53:14.6296072Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:53:14.6296553Z               "line": 187
2026-06-04T12:53:14.6296982Z             },
2026-06-04T12:53:14.6297396Z             {
2026-06-04T12:53:14.6297984Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T12:53:14.6298419Z               "line": 205
2026-06-04T12:53:14.6298840Z             }
2026-06-04T12:53:14.6299285Z           ]
2026-06-04T12:53:14.6299711Z         }
2026-06-04T12:53:14.6300144Z       }
2026-06-04T12:53:14.6300555Z     },
2026-06-04T12:53:14.6300972Z     {
2026-06-04T12:53:14.6301447Z       "id": "REQ-SEAM-SPAWN",
2026-06-04T12:53:14.6301962Z       "title": "spawn-session seam",
2026-06-04T12:53:14.6302422Z       "requiredStages": [
2026-06-04T12:53:14.6302855Z         "impl",
2026-06-04T12:53:14.6303285Z         "unit"
2026-06-04T12:53:14.6303691Z       ],
2026-06-04T12:53:14.6304128Z       "stages": {
2026-06-04T12:53:14.6304547Z         "doc": {
2026-06-04T12:53:14.6305015Z           "complete": false,
2026-06-04T12:53:14.6305457Z           "evidence": []
2026-06-04T12:53:14.6305873Z         },
2026-06-04T12:53:14.6306308Z         "impl": {
2026-06-04T12:53:14.6306761Z           "complete": true,
2026-06-04T12:53:14.6307206Z           "evidence": [
2026-06-04T12:53:14.6307623Z             {
2026-06-04T12:53:14.6308262Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:53:14.6308694Z               "line": 20
2026-06-04T12:53:14.6309116Z             }
2026-06-04T12:53:14.6309594Z           ]
2026-06-04T12:53:14.6310020Z         },
2026-06-04T12:53:14.6310447Z         "int": {
2026-06-04T12:53:14.6310913Z           "complete": false,
2026-06-04T12:53:14.6311365Z           "evidence": []
2026-06-04T12:53:14.6311776Z         },
2026-06-04T12:53:14.6312199Z         "unit": {
2026-06-04T12:53:14.6312660Z           "complete": true,
2026-06-04T12:53:14.6313095Z           "evidence": [
2026-06-04T12:53:14.6313522Z             {
2026-06-04T12:53:14.6314141Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:53:14.6314589Z               "line": 397
2026-06-04T12:53:14.6315003Z             },
2026-06-04T12:53:14.6315425Z             {
2026-06-04T12:53:14.6316054Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:53:14.6316490Z               "line": 404
2026-06-04T12:53:14.6316916Z             },
2026-06-04T12:53:14.6317323Z             {
2026-06-04T12:53:14.6317965Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:53:14.6318601Z               "line": 414
2026-06-04T12:53:14.6319026Z             },
2026-06-04T12:53:14.6319703Z             {
2026-06-04T12:53:14.6320334Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:53:14.6320785Z               "line": 420
2026-06-04T12:53:14.6321200Z             },
2026-06-04T12:53:14.6321616Z             {
2026-06-04T12:53:14.6322240Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:53:14.6322690Z               "line": 440
2026-06-04T12:53:14.6323110Z             },
2026-06-04T12:53:14.6323518Z             {
2026-06-04T12:53:14.6324149Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T12:53:14.6324589Z               "line": 473
2026-06-04T12:53:14.6325008Z             }
2026-06-04T12:53:14.6325446Z           ]
2026-06-04T12:53:14.6325870Z         }
2026-06-04T12:53:14.6326285Z       }
2026-06-04T12:53:14.6326689Z     },
2026-06-04T12:53:14.6327101Z     {
2026-06-04T12:53:14.6327567Z       "id": "REQ-SEAM-UPDATE",
2026-06-04T12:53:14.6328459Z       "title": "Adapter-update avenue (file-pull / delegated command)",
2026-06-04T12:53:14.6328934Z       "requiredStages": [
2026-06-04T12:53:14.6329405Z         "impl",
2026-06-04T12:53:14.6329832Z         "unit"
2026-06-04T12:53:14.6330243Z       ],
2026-06-04T12:53:14.6330677Z       "stages": {
2026-06-04T12:53:14.6331092Z         "doc": {
2026-06-04T12:53:14.6331558Z           "complete": false,
2026-06-04T12:53:14.6332002Z           "evidence": []
2026-06-04T12:53:14.6332421Z         },
2026-06-04T12:53:14.6332845Z         "impl": {
2026-06-04T12:53:14.6333300Z           "complete": true,
2026-06-04T12:53:14.6333743Z           "evidence": [
2026-06-04T12:53:14.6334150Z             {
2026-06-04T12:53:14.6334871Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6335304Z               "line": 28
2026-06-04T12:53:14.6335722Z             },
2026-06-04T12:53:14.6336227Z             {
2026-06-04T12:53:14.6336910Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6337370Z               "line": 83
2026-06-04T12:53:14.6337796Z             }
2026-06-04T12:53:14.6338218Z           ]
2026-06-04T12:53:14.6338628Z         },
2026-06-04T12:53:14.6339048Z         "int": {
2026-06-04T12:53:14.6339561Z           "complete": false,
2026-06-04T12:53:14.6340006Z           "evidence": []
2026-06-04T12:53:14.6340425Z         },
2026-06-04T12:53:14.6340845Z         "unit": {
2026-06-04T12:53:14.6341310Z           "complete": true,
2026-06-04T12:53:14.6341746Z           "evidence": [
2026-06-04T12:53:14.6342164Z             {
2026-06-04T12:53:14.6342858Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6343294Z               "line": 248
2026-06-04T12:53:14.6343721Z             },
2026-06-04T12:53:14.6344138Z             {
2026-06-04T12:53:14.6344829Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6345266Z               "line": 259
2026-06-04T12:53:14.6345705Z             }
2026-06-04T12:53:14.6346123Z           ]
2026-06-04T12:53:14.6346535Z         }
2026-06-04T12:53:14.6346968Z       }
2026-06-04T12:53:14.6347375Z     },
2026-06-04T12:53:14.6347788Z     {
2026-06-04T12:53:14.6348229Z       "id": "REQ-SEC-1",
2026-06-04T12:53:14.6356542Z       "title": "Per-endpoint access whitelist: origin-node gate, stateful-firewall (reply/outbound exempt), node-now/user-later, outer gate before grants",
2026-06-04T12:53:14.6357100Z       "requiredStages": [
2026-06-04T12:53:14.6357529Z         "impl",
2026-06-04T12:53:14.6357967Z         "unit"
2026-06-04T12:53:14.6358380Z       ],
2026-06-04T12:53:14.6358821Z       "stages": {
2026-06-04T12:53:14.6359308Z         "doc": {
2026-06-04T12:53:14.6359790Z           "complete": false,
2026-06-04T12:53:14.6360243Z           "evidence": []
2026-06-04T12:53:14.6360651Z         },
2026-06-04T12:53:14.6361088Z         "impl": {
2026-06-04T12:53:14.6361545Z           "complete": true,
2026-06-04T12:53:14.6361987Z           "evidence": [
2026-06-04T12:53:14.6362654Z             {
2026-06-04T12:53:14.6363287Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:53:14.6363875Z               "line": 84
2026-06-04T12:53:14.6364293Z             },
2026-06-04T12:53:14.6364714Z             {
2026-06-04T12:53:14.6365324Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:53:14.6365773Z               "line": 114
2026-06-04T12:53:14.6366184Z             },
2026-06-04T12:53:14.6366604Z             {
2026-06-04T12:53:14.6367224Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:53:14.6367662Z               "line": 128
2026-06-04T12:53:14.6368081Z             },
2026-06-04T12:53:14.6368494Z             {
2026-06-04T12:53:14.6369087Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:53:14.6369575Z               "line": 108
2026-06-04T12:53:14.6369999Z             },
2026-06-04T12:53:14.6370419Z             {
2026-06-04T12:53:14.6371007Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:53:14.6371472Z               "line": 129
2026-06-04T12:53:14.6371885Z             },
2026-06-04T12:53:14.6372312Z             {
2026-06-04T12:53:14.6372912Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:53:14.6373352Z               "line": 142
2026-06-04T12:53:14.6373774Z             },
2026-06-04T12:53:14.6374185Z             {
2026-06-04T12:53:14.6374783Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:53:14.6375222Z               "line": 208
2026-06-04T12:53:14.6375644Z             },
2026-06-04T12:53:14.6376069Z             {
2026-06-04T12:53:14.6376655Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:53:14.6377104Z               "line": 234
2026-06-04T12:53:14.6377519Z             },
2026-06-04T12:53:14.6377937Z             {
2026-06-04T12:53:14.6378463Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.6378914Z               "line": 919
2026-06-04T12:53:14.6379376Z             }
2026-06-04T12:53:14.6379797Z           ]
2026-06-04T12:53:14.6380218Z         },
2026-06-04T12:53:14.6380629Z         "int": {
2026-06-04T12:53:14.6381113Z           "complete": false,
2026-06-04T12:53:14.6381548Z           "evidence": []
2026-06-04T12:53:14.6381967Z         },
2026-06-04T12:53:14.6382396Z         "unit": {
2026-06-04T12:53:14.6382850Z           "complete": true,
2026-06-04T12:53:14.6383296Z           "evidence": [
2026-06-04T12:53:14.6383703Z             {
2026-06-04T12:53:14.6384321Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:53:14.6384763Z               "line": 140
2026-06-04T12:53:14.6385185Z             },
2026-06-04T12:53:14.6385706Z             {
2026-06-04T12:53:14.6386316Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:53:14.6386759Z               "line": 186
2026-06-04T12:53:14.6387172Z             },
2026-06-04T12:53:14.6387583Z             {
2026-06-04T12:53:14.6388189Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T12:53:14.6388641Z               "line": 218
2026-06-04T12:53:14.6389057Z             },
2026-06-04T12:53:14.6389502Z             {
2026-06-04T12:53:14.6390147Z               "path": "crates/spt-daemon/tests/access.rs",
2026-06-04T12:53:14.6390586Z               "line": 128
2026-06-04T12:53:14.6391009Z             },
2026-06-04T12:53:14.6391418Z             {
2026-06-04T12:53:14.6392019Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:53:14.6392468Z               "line": 248
2026-06-04T12:53:14.6392881Z             },
2026-06-04T12:53:14.6393296Z             {
2026-06-04T12:53:14.6393884Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:53:14.6394335Z               "line": 275
2026-06-04T12:53:14.6394743Z             },
2026-06-04T12:53:14.6395162Z             {
2026-06-04T12:53:14.6395760Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:53:14.6396194Z               "line": 299
2026-06-04T12:53:14.6396616Z             },
2026-06-04T12:53:14.6397187Z             {
2026-06-04T12:53:14.6397782Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:53:14.6398348Z               "line": 310
2026-06-04T12:53:14.6398770Z             },
2026-06-04T12:53:14.6399227Z             {
2026-06-04T12:53:14.6399828Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:53:14.6400274Z               "line": 334
2026-06-04T12:53:14.6400684Z             },
2026-06-04T12:53:14.6401100Z             {
2026-06-04T12:53:14.6401685Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T12:53:14.6402134Z               "line": 350
2026-06-04T12:53:14.6402553Z             },
2026-06-04T12:53:14.6402961Z             {
2026-06-04T12:53:14.6403489Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.6403927Z               "line": 1173
2026-06-04T12:53:14.6404342Z             }
2026-06-04T12:53:14.6404758Z           ]
2026-06-04T12:53:14.6405164Z         }
2026-06-04T12:53:14.6405582Z       }
2026-06-04T12:53:14.6405996Z     },
2026-06-04T12:53:14.6406411Z     {
2026-06-04T12:53:14.6406862Z       "id": "REQ-START-1",
2026-06-04T12:53:14.6407939Z       "title": "Adapters never resolve SPT_HOME; binary on PATH; api bridging only",
2026-06-04T12:53:14.6408414Z       "requiredStages": [
2026-06-04T12:53:14.6408831Z         "impl",
2026-06-04T12:53:14.6409298Z         "unit"
2026-06-04T12:53:14.6409711Z       ],
2026-06-04T12:53:14.6410147Z       "stages": {
2026-06-04T12:53:14.6410563Z         "doc": {
2026-06-04T12:53:14.6411048Z           "complete": false,
2026-06-04T12:53:14.6411490Z           "evidence": []
2026-06-04T12:53:14.6411909Z         },
2026-06-04T12:53:14.6412340Z         "impl": {
2026-06-04T12:53:14.6412794Z           "complete": true,
2026-06-04T12:53:14.6413243Z           "evidence": [
2026-06-04T12:53:14.6413648Z             {
2026-06-04T12:53:14.6414229Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T12:53:14.6414659Z               "line": 16
2026-06-04T12:53:14.6415081Z             }
2026-06-04T12:53:14.6415506Z           ]
2026-06-04T12:53:14.6415911Z         },
2026-06-04T12:53:14.6416332Z         "int": {
2026-06-04T12:53:14.6416790Z           "complete": false,
2026-06-04T12:53:14.6417239Z           "evidence": []
2026-06-04T12:53:14.6417642Z         },
2026-06-04T12:53:14.6418066Z         "unit": {
2026-06-04T12:53:14.6418520Z           "complete": true,
2026-06-04T12:53:14.6418953Z           "evidence": [
2026-06-04T12:53:14.6419409Z             {
2026-06-04T12:53:14.6419990Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T12:53:14.6420433Z               "line": 43
2026-06-04T12:53:14.6420841Z             },
2026-06-04T12:53:14.6421259Z             {
2026-06-04T12:53:14.6421836Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T12:53:14.6422269Z               "line": 59
2026-06-04T12:53:14.6422687Z             }
2026-06-04T12:53:14.6423091Z           ]
2026-06-04T12:53:14.6423507Z         }
2026-06-04T12:53:14.6423915Z       }
2026-06-04T12:53:14.6424342Z     },
2026-06-04T12:53:14.6424753Z     {
2026-06-04T12:53:14.6425209Z       "id": "REQ-START-2",
2026-06-04T12:53:14.6425963Z       "title": "Harness-hosted startup: api seed then listen",
2026-06-04T12:53:14.6426423Z       "requiredStages": [
2026-06-04T12:53:14.6426850Z         "impl",
2026-06-04T12:53:14.6427268Z         "unit",
2026-06-04T12:53:14.6427698Z         "int"
2026-06-04T12:53:14.6428121Z       ],
2026-06-04T12:53:14.6428542Z       "stages": {
2026-06-04T12:53:14.6428966Z         "doc": {
2026-06-04T12:53:14.6429457Z           "complete": false,
2026-06-04T12:53:14.6429918Z           "evidence": []
2026-06-04T12:53:14.6430326Z         },
2026-06-04T12:53:14.6430760Z         "impl": {
2026-06-04T12:53:14.6431219Z           "complete": true,
2026-06-04T12:53:14.6437133Z           "evidence": [
2026-06-04T12:53:14.6437677Z             {
2026-06-04T12:53:14.6438299Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6438739Z               "line": 16
2026-06-04T12:53:14.6439489Z             },
2026-06-04T12:53:14.6439922Z             {
2026-06-04T12:53:14.6440512Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6441098Z               "line": 94
2026-06-04T12:53:14.6441522Z             },
2026-06-04T12:53:14.6441928Z             {
2026-06-04T12:53:14.6442520Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6442953Z               "line": 163
2026-06-04T12:53:14.6443368Z             }
2026-06-04T12:53:14.6443784Z           ]
2026-06-04T12:53:14.6444196Z         },
2026-06-04T12:53:14.6444616Z         "int": {
2026-06-04T12:53:14.6445066Z           "complete": true,
2026-06-04T12:53:14.6445509Z           "evidence": [
2026-06-04T12:53:14.6445914Z             {
2026-06-04T12:53:14.6446533Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:53:14.6446981Z               "line": 150
2026-06-04T12:53:14.6447387Z             }
2026-06-04T12:53:14.6447802Z           ]
2026-06-04T12:53:14.6448208Z         },
2026-06-04T12:53:14.6448652Z         "unit": {
2026-06-04T12:53:14.6449098Z           "complete": true,
2026-06-04T12:53:14.6449586Z           "evidence": [
2026-06-04T12:53:14.6450006Z             {
2026-06-04T12:53:14.6450586Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6451031Z               "line": 363
2026-06-04T12:53:14.6451437Z             },
2026-06-04T12:53:14.6451852Z             {
2026-06-04T12:53:14.6452426Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6452870Z               "line": 396
2026-06-04T12:53:14.6453291Z             }
2026-06-04T12:53:14.6453695Z           ]
2026-06-04T12:53:14.6454108Z         }
2026-06-04T12:53:14.6454514Z       }
2026-06-04T12:53:14.6454925Z     },
2026-06-04T12:53:14.6455332Z     {
2026-06-04T12:53:14.6455786Z       "id": "REQ-START-3",
2026-06-04T12:53:14.6456699Z       "title": "spt-hosted startup: spawn-session then api bind (no file)",
2026-06-04T12:53:14.6457158Z       "requiredStages": [
2026-06-04T12:53:14.6457591Z         "impl",
2026-06-04T12:53:14.6458004Z         "unit",
2026-06-04T12:53:14.6458423Z         "int"
2026-06-04T12:53:14.6458838Z       ],
2026-06-04T12:53:14.6459292Z       "stages": {
2026-06-04T12:53:14.6459714Z         "doc": {
2026-06-04T12:53:14.6460164Z           "complete": false,
2026-06-04T12:53:14.6460612Z           "evidence": []
2026-06-04T12:53:14.6461013Z         },
2026-06-04T12:53:14.6461442Z         "impl": {
2026-06-04T12:53:14.6461888Z           "complete": true,
2026-06-04T12:53:14.6462323Z           "evidence": [
2026-06-04T12:53:14.6462739Z             {
2026-06-04T12:53:14.6463356Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:53:14.6463801Z               "line": 23
2026-06-04T12:53:14.6464209Z             },
2026-06-04T12:53:14.6464626Z             {
2026-06-04T12:53:14.6465242Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:53:14.6465688Z               "line": 167
2026-06-04T12:53:14.6466109Z             },
2026-06-04T12:53:14.6466525Z             {
2026-06-04T12:53:14.6467143Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:53:14.6467585Z               "line": 180
2026-06-04T12:53:14.6468001Z             },
2026-06-04T12:53:14.6468411Z             {
2026-06-04T12:53:14.6468988Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6469459Z               "line": 17
2026-06-04T12:53:14.6469869Z             },
2026-06-04T12:53:14.6470276Z             {
2026-06-04T12:53:14.6470853Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6471292Z               "line": 43
2026-06-04T12:53:14.6471709Z             },
2026-06-04T12:53:14.6472112Z             {
2026-06-04T12:53:14.6472697Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6473122Z               "line": 95
2026-06-04T12:53:14.6473535Z             }
2026-06-04T12:53:14.6473944Z           ]
2026-06-04T12:53:14.6474359Z         },
2026-06-04T12:53:14.6474785Z         "int": {
2026-06-04T12:53:14.6475452Z           "complete": true,
2026-06-04T12:53:14.6475896Z           "evidence": [
2026-06-04T12:53:14.6476461Z             {
2026-06-04T12:53:14.6477075Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T12:53:14.6477504Z               "line": 321
2026-06-04T12:53:14.6477927Z             }
2026-06-04T12:53:14.6478336Z           ]
2026-06-04T12:53:14.6478738Z         },
2026-06-04T12:53:14.6479201Z         "unit": {
2026-06-04T12:53:14.6479661Z           "complete": true,
2026-06-04T12:53:14.6480098Z           "evidence": [
2026-06-04T12:53:14.6480499Z             {
2026-06-04T12:53:14.6481113Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:53:14.6481558Z               "line": 245
2026-06-04T12:53:14.6481965Z             },
2026-06-04T12:53:14.6482375Z             {
2026-06-04T12:53:14.6482984Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:53:14.6483429Z               "line": 263
2026-06-04T12:53:14.6483841Z             },
2026-06-04T12:53:14.6484268Z             {
2026-06-04T12:53:14.6484880Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T12:53:14.6485322Z               "line": 273
2026-06-04T12:53:14.6485738Z             },
2026-06-04T12:53:14.6486238Z             {
2026-06-04T12:53:14.6486820Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6487256Z               "line": 364
2026-06-04T12:53:14.6487672Z             },
2026-06-04T12:53:14.6488083Z             {
2026-06-04T12:53:14.6488664Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6489105Z               "line": 397
2026-06-04T12:53:14.6489557Z             },
2026-06-04T12:53:14.6489974Z             {
2026-06-04T12:53:14.6490545Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T12:53:14.6490992Z               "line": 405
2026-06-04T12:53:14.6491409Z             }
2026-06-04T12:53:14.6491812Z           ]
2026-06-04T12:53:14.6492222Z         }
2026-06-04T12:53:14.6492624Z       }
2026-06-04T12:53:14.6493041Z     },
2026-06-04T12:53:14.6493444Z     {
2026-06-04T12:53:14.6493897Z       "id": "REQ-START-4",
2026-06-04T12:53:14.6494636Z       "title": "Adapter-injected env aliases (SPT/OWL/LIVE)",
2026-06-04T12:53:14.6495097Z       "requiredStages": [
2026-06-04T12:53:14.6495520Z         "impl",
2026-06-04T12:53:14.6495997Z         "unit"
2026-06-04T12:53:14.6496408Z       ],
2026-06-04T12:53:14.6496820Z       "stages": {
2026-06-04T12:53:14.6497237Z         "doc": {
2026-06-04T12:53:14.6497696Z           "complete": false,
2026-06-04T12:53:14.6498132Z           "evidence": []
2026-06-04T12:53:14.6498546Z         },
2026-06-04T12:53:14.6498961Z         "impl": {
2026-06-04T12:53:14.6499453Z           "complete": true,
2026-06-04T12:53:14.6499893Z           "evidence": [
2026-06-04T12:53:14.6500304Z             {
2026-06-04T12:53:14.6500923Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.6501358Z               "line": 249
2026-06-04T12:53:14.6501773Z             }
2026-06-04T12:53:14.6502189Z           ]
2026-06-04T12:53:14.6502599Z         },
2026-06-04T12:53:14.6503012Z         "int": {
2026-06-04T12:53:14.6503487Z           "complete": false,
2026-06-04T12:53:14.6503934Z           "evidence": []
2026-06-04T12:53:14.6504338Z         },
2026-06-04T12:53:14.6504764Z         "unit": {
2026-06-04T12:53:14.6505215Z           "complete": true,
2026-06-04T12:53:14.6505653Z           "evidence": [
2026-06-04T12:53:14.6506059Z             {
2026-06-04T12:53:14.6506675Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T12:53:14.6507121Z               "line": 442
2026-06-04T12:53:14.6507530Z             }
2026-06-04T12:53:14.6507940Z           ]
2026-06-04T12:53:14.6508346Z         }
2026-06-04T12:53:14.6508768Z       }
2026-06-04T12:53:14.6509199Z     },
2026-06-04T12:53:14.6509611Z     {
2026-06-04T12:53:14.6510074Z       "id": "REQ-STORE-1",
2026-06-04T12:53:14.6515639Z       "title": "spt-store::BranchStore (git branch as versioned KV; commit=checkpoint/tip=resume, atomic multi-key, merge-native sync) is the substrate for coarse/durable/audited state (context, registry snapshot+distribution, daemon checkpoint); hot paths (B5 fsync journal) + indexed queries (SQLite spool) excluded (ADR-0011)",
2026-06-04T12:53:14.6516677Z       "requiredStages": [
2026-06-04T12:53:14.6523428Z         "impl",
2026-06-04T12:53:14.6524190Z         "unit"
2026-06-04T12:53:14.6524640Z       ],
2026-06-04T12:53:14.6525079Z       "stages": {
2026-06-04T12:53:14.6525510Z         "doc": {
2026-06-04T12:53:14.6525992Z           "complete": false,
2026-06-04T12:53:14.6526462Z           "evidence": []
2026-06-04T12:53:14.6526891Z         },
2026-06-04T12:53:14.6527334Z         "impl": {
2026-06-04T12:53:14.6527810Z           "complete": true,
2026-06-04T12:53:14.6528261Z           "evidence": [
2026-06-04T12:53:14.6528692Z             {
2026-06-04T12:53:14.6529430Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6529888Z               "line": 23
2026-06-04T12:53:14.6530362Z             },
2026-06-04T12:53:14.6530793Z             {
2026-06-04T12:53:14.6531471Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6531944Z               "line": 46
2026-06-04T12:53:14.6532382Z             },
2026-06-04T12:53:14.6532805Z             {
2026-06-04T12:53:14.6533485Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6533941Z               "line": 88
2026-06-04T12:53:14.6534362Z             },
2026-06-04T12:53:14.6534788Z             {
2026-06-04T12:53:14.6535451Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6535912Z               "line": 109
2026-06-04T12:53:14.6536336Z             },
2026-06-04T12:53:14.6536763Z             {
2026-06-04T12:53:14.6537447Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6537926Z               "line": 152
2026-06-04T12:53:14.6538498Z             },
2026-06-04T12:53:14.6538903Z             {
2026-06-04T12:53:14.6539606Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6540038Z               "line": 165
2026-06-04T12:53:14.6540465Z             },
2026-06-04T12:53:14.6540883Z             {
2026-06-04T12:53:14.6541519Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6541970Z               "line": 353
2026-06-04T12:53:14.6542387Z             },
2026-06-04T12:53:14.6542804Z             {
2026-06-04T12:53:14.6543464Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.6543903Z               "line": 25
2026-06-04T12:53:14.6544320Z             },
2026-06-04T12:53:14.6544731Z             {
2026-06-04T12:53:14.6545393Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.6545822Z               "line": 92
2026-06-04T12:53:14.6546244Z             },
2026-06-04T12:53:14.6546654Z             {
2026-06-04T12:53:14.6547320Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.6547772Z               "line": 117
2026-06-04T12:53:14.6548186Z             },
2026-06-04T12:53:14.6548601Z             {
2026-06-04T12:53:14.6549301Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.6549755Z               "line": 131
2026-06-04T12:53:14.6550168Z             },
2026-06-04T12:53:14.6550586Z             {
2026-06-04T12:53:14.6551261Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.6551706Z               "line": 145
2026-06-04T12:53:14.6552120Z             },
2026-06-04T12:53:14.6552529Z             {
2026-06-04T12:53:14.6553192Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.6553628Z               "line": 154
2026-06-04T12:53:14.6554044Z             },
2026-06-04T12:53:14.6554458Z             {
2026-06-04T12:53:14.6555062Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T12:53:14.6555505Z               "line": 16
2026-06-04T12:53:14.6555913Z             },
2026-06-04T12:53:14.6556627Z             {
2026-06-04T12:53:14.6557251Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T12:53:14.6557838Z               "line": 63
2026-06-04T12:53:14.6558253Z             }
2026-06-04T12:53:14.6558656Z           ]
2026-06-04T12:53:14.6559067Z         },
2026-06-04T12:53:14.6559521Z         "int": {
2026-06-04T12:53:14.6559987Z           "complete": false,
2026-06-04T12:53:14.6560431Z           "evidence": []
2026-06-04T12:53:14.6560841Z         },
2026-06-04T12:53:14.6561264Z         "unit": {
2026-06-04T12:53:14.6561708Z           "complete": true,
2026-06-04T12:53:14.6562146Z           "evidence": [
2026-06-04T12:53:14.6562548Z             {
2026-06-04T12:53:14.6563204Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6563647Z               "line": 391
2026-06-04T12:53:14.6564055Z             },
2026-06-04T12:53:14.6564469Z             {
2026-06-04T12:53:14.6565107Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6565562Z               "line": 401
2026-06-04T12:53:14.6565974Z             },
2026-06-04T12:53:14.6566386Z             {
2026-06-04T12:53:14.6567048Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6567485Z               "line": 421
2026-06-04T12:53:14.6567897Z             },
2026-06-04T12:53:14.6568304Z             {
2026-06-04T12:53:14.6568941Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6569417Z               "line": 437
2026-06-04T12:53:14.6569844Z             },
2026-06-04T12:53:14.6570258Z             {
2026-06-04T12:53:14.6570900Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T12:53:14.6571350Z               "line": 458
2026-06-04T12:53:14.6571758Z             },
2026-06-04T12:53:14.6572172Z             {
2026-06-04T12:53:14.6572826Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.6573274Z               "line": 312
2026-06-04T12:53:14.6573696Z             },
2026-06-04T12:53:14.6574113Z             {
2026-06-04T12:53:14.6574776Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T12:53:14.6575216Z               "line": 342
2026-06-04T12:53:14.6575634Z             },
2026-06-04T12:53:14.6576043Z             {
2026-06-04T12:53:14.6576665Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T12:53:14.6577109Z               "line": 116
2026-06-04T12:53:14.6577518Z             },
2026-06-04T12:53:14.6577933Z             {
2026-06-04T12:53:14.6578538Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T12:53:14.6578987Z               "line": 124
2026-06-04T12:53:14.6579427Z             }
2026-06-04T12:53:14.6579853Z           ]
2026-06-04T12:53:14.6580269Z         }
2026-06-04T12:53:14.6580672Z       }
2026-06-04T12:53:14.6581079Z     },
2026-06-04T12:53:14.6581480Z     {
2026-06-04T12:53:14.6581942Z       "id": "REQ-TERM-1",
2026-06-04T12:53:14.6582837Z       "title": "Process-supervisor terminal wrapper hosting broker PTYs",
2026-06-04T12:53:14.6583322Z       "requiredStages": [
2026-06-04T12:53:14.6583750Z         "impl",
2026-06-04T12:53:14.6584172Z         "unit"
2026-06-04T12:53:14.6584583Z       ],
2026-06-04T12:53:14.6584999Z       "stages": {
2026-06-04T12:53:14.6585526Z         "doc": {
2026-06-04T12:53:14.6585982Z           "complete": false,
2026-06-04T12:53:14.6586428Z           "evidence": []
2026-06-04T12:53:14.6586843Z         },
2026-06-04T12:53:14.6587256Z         "impl": {
2026-06-04T12:53:14.6587712Z           "complete": true,
2026-06-04T12:53:14.6588139Z           "evidence": [
2026-06-04T12:53:14.6588558Z             {
2026-06-04T12:53:14.6589136Z               "path": "crates/spt-term/src/pty.rs",
2026-06-04T12:53:14.6589629Z               "line": 61
2026-06-04T12:53:14.6590054Z             },
2026-06-04T12:53:14.6590460Z             {
2026-06-04T12:53:14.6591016Z               "path": "crates/spt-term/src/pty.rs",
2026-06-04T12:53:14.6591448Z               "line": 169
2026-06-04T12:53:14.6591869Z             },
2026-06-04T12:53:14.6592450Z             {
2026-06-04T12:53:14.6593057Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T12:53:14.6593642Z               "line": 95
2026-06-04T12:53:14.6594048Z             }
2026-06-04T12:53:14.6594467Z           ]
2026-06-04T12:53:14.6594875Z         },
2026-06-04T12:53:14.6595295Z         "int": {
2026-06-04T12:53:14.6595748Z           "complete": false,
2026-06-04T12:53:14.6596200Z           "evidence": []
2026-06-04T12:53:14.6596613Z         },
2026-06-04T12:53:14.6597030Z         "unit": {
2026-06-04T12:53:14.6597490Z           "complete": true,
2026-06-04T12:53:14.6597929Z           "evidence": [
2026-06-04T12:53:14.6598343Z             {
2026-06-04T12:53:14.6598957Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-04T12:53:14.6599441Z               "line": 28
2026-06-04T12:53:14.6599864Z             },
2026-06-04T12:53:14.6600271Z             {
2026-06-04T12:53:14.6600882Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-04T12:53:14.6607050Z               "line": 60
2026-06-04T12:53:14.6607618Z             }
2026-06-04T12:53:14.6608064Z           ]
2026-06-04T12:53:14.6608484Z         }
2026-06-04T12:53:14.6608903Z       }
2026-06-04T12:53:14.6609375Z     },
2026-06-04T12:53:14.6609809Z     {
2026-06-04T12:53:14.6610284Z       "id": "REQ-TERM-2",
2026-06-04T12:53:14.6611270Z       "title": "session-surface abstraction; send-keys + send-line injection",
2026-06-04T12:53:14.6611733Z       "requiredStages": [
2026-06-04T12:53:14.6612161Z         "impl",
2026-06-04T12:53:14.6612582Z         "unit"
2026-06-04T12:53:14.6612986Z       ],
2026-06-04T12:53:14.6613417Z       "stages": {
2026-06-04T12:53:14.6613835Z         "doc": {
2026-06-04T12:53:14.6614305Z           "complete": false,
2026-06-04T12:53:14.6614743Z           "evidence": []
2026-06-04T12:53:14.6615154Z         },
2026-06-04T12:53:14.6615580Z         "impl": {
2026-06-04T12:53:14.6616028Z           "complete": true,
2026-06-04T12:53:14.6616476Z           "evidence": [
2026-06-04T12:53:14.6616897Z             {
2026-06-04T12:53:14.6617496Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T12:53:14.6617944Z               "line": 112
2026-06-04T12:53:14.6618363Z             },
2026-06-04T12:53:14.6618777Z             {
2026-06-04T12:53:14.6619400Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T12:53:14.6620138Z               "line": 122
2026-06-04T12:53:14.6620558Z             }
2026-06-04T12:53:14.6620975Z           ]
2026-06-04T12:53:14.6621378Z         },
2026-06-04T12:53:14.6621803Z         "int": {
2026-06-04T12:53:14.6622266Z           "complete": false,
2026-06-04T12:53:14.6622705Z           "evidence": []
2026-06-04T12:53:14.6623117Z         },
2026-06-04T12:53:14.6623530Z         "unit": {
2026-06-04T12:53:14.6623990Z           "complete": true,
2026-06-04T12:53:14.6624422Z           "evidence": [
2026-06-04T12:53:14.6624837Z             {
2026-06-04T12:53:14.6625449Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-04T12:53:14.6625892Z               "line": 46
2026-06-04T12:53:14.6626312Z             },
2026-06-04T12:53:14.6626731Z             {
2026-06-04T12:53:14.6627349Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-04T12:53:14.6627784Z               "line": 71
2026-06-04T12:53:14.6628203Z             }
2026-06-04T12:53:14.6628617Z           ]
2026-06-04T12:53:14.6629020Z         }
2026-06-04T12:53:14.6629657Z       }
2026-06-04T12:53:14.6630217Z     },
2026-06-04T12:53:14.6630630Z     {
2026-06-04T12:53:14.6631088Z       "id": "REQ-TERM-3",
2026-06-04T12:53:14.6631836Z       "title": "Byte-stream remote terminal streaming for v1",
2026-06-04T12:53:14.6632309Z       "requiredStages": [
2026-06-04T12:53:14.6632728Z         "impl",
2026-06-04T12:53:14.6633153Z         "unit"
2026-06-04T12:53:14.6633565Z       ],
2026-06-04T12:53:14.6633999Z       "stages": {
2026-06-04T12:53:14.6634414Z         "doc": {
2026-06-04T12:53:14.6634881Z           "complete": false,
2026-06-04T12:53:14.6635763Z           "evidence": []
2026-06-04T12:53:14.6636173Z         },
2026-06-04T12:53:14.6636605Z         "impl": {
2026-06-04T12:53:14.6637199Z           "complete": true,
2026-06-04T12:53:14.6637649Z           "evidence": [
2026-06-04T12:53:14.6638062Z             {
2026-06-04T12:53:14.6638652Z               "path": "crates/spt-term/src/stream.rs",
2026-06-04T12:53:14.6639092Z               "line": 71
2026-06-04T12:53:14.6639758Z             }
2026-06-04T12:53:14.6640387Z           ]
2026-06-04T12:53:14.6640804Z         },
2026-06-04T12:53:14.6641230Z         "int": {
2026-06-04T12:53:14.6641713Z           "complete": false,
2026-06-04T12:53:14.6642220Z           "evidence": []
2026-06-04T12:53:14.6642641Z         },
2026-06-04T12:53:14.6643059Z         "unit": {
2026-06-04T12:53:14.6643527Z           "complete": true,
2026-06-04T12:53:14.6643961Z           "evidence": [
2026-06-04T12:53:14.6644382Z             {
2026-06-04T12:53:14.6644993Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-04T12:53:14.6645461Z               "line": 37
2026-06-04T12:53:14.6645885Z             },
2026-06-04T12:53:14.6646293Z             {
2026-06-04T12:53:14.6646909Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-04T12:53:14.6647353Z               "line": 67
2026-06-04T12:53:14.6647777Z             }
2026-06-04T12:53:14.6648188Z           ]
2026-06-04T12:53:14.6648609Z         }
2026-06-04T12:53:14.6649025Z       }
2026-06-04T12:53:14.6649479Z     },
2026-06-04T12:53:14.6649899Z     {
2026-06-04T12:53:14.6650348Z       "id": "REQ-TERM-4",
2026-06-04T12:53:14.6652453Z       "title": "Live activity buffer (PTY digest): adapter-supplied patterns over broker PTY, spt digest pull + delta-stream, opt-in Path-B log",
2026-06-04T12:53:14.6652922Z       "requiredStages": [
2026-06-04T12:53:14.6653355Z         "impl",
2026-06-04T12:53:14.6653785Z         "unit",
2026-06-04T12:53:14.6654199Z         "int"
2026-06-04T12:53:14.6654619Z       ],
2026-06-04T12:53:14.6655052Z       "stages": {
2026-06-04T12:53:14.6655492Z         "doc": {
2026-06-04T12:53:14.6655950Z           "complete": true,
2026-06-04T12:53:14.6656396Z           "evidence": [
2026-06-04T12:53:14.6656823Z             {
2026-06-04T12:53:14.6657318Z               "path": "docs/MANIFEST.md",
2026-06-04T12:53:14.6657768Z               "line": 115
2026-06-04T12:53:14.6658178Z             }
2026-06-04T12:53:14.6658595Z           ]
2026-06-04T12:53:14.6659005Z         },
2026-06-04T12:53:14.6659473Z         "impl": {
2026-06-04T12:53:14.6659943Z           "complete": true,
2026-06-04T12:53:14.6660383Z           "evidence": [
2026-06-04T12:53:14.6660804Z             {
2026-06-04T12:53:14.6661400Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T12:53:14.6661849Z               "line": 463
2026-06-04T12:53:14.6662262Z             },
2026-06-04T12:53:14.6662688Z             {
2026-06-04T12:53:14.6663301Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6663736Z               "line": 41
2026-06-04T12:53:14.6664167Z             },
2026-06-04T12:53:14.6664580Z             {
2026-06-04T12:53:14.6665197Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6665649Z               "line": 91
2026-06-04T12:53:14.6666074Z             },
2026-06-04T12:53:14.6666500Z             {
2026-06-04T12:53:14.6667106Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6667558Z               "line": 152
2026-06-04T12:53:14.6667977Z             },
2026-06-04T12:53:14.6668393Z             {
2026-06-04T12:53:14.6668995Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6669484Z               "line": 212
2026-06-04T12:53:14.6669917Z             },
2026-06-04T12:53:14.6670329Z             {
2026-06-04T12:53:14.6670969Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:53:14.6671400Z               "line": 20
2026-06-04T12:53:14.6671827Z             },
2026-06-04T12:53:14.6672249Z             {
2026-06-04T12:53:14.6672891Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:53:14.6673519Z               "line": 212
2026-06-04T12:53:14.6673941Z             },
2026-06-04T12:53:14.6674503Z             {
2026-06-04T12:53:14.6675146Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:53:14.6675591Z               "line": 226
2026-06-04T12:53:14.6676021Z             },
2026-06-04T12:53:14.6676431Z             {
2026-06-04T12:53:14.6677072Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.6677516Z               "line": 585
2026-06-04T12:53:14.6677951Z             },
2026-06-04T12:53:14.6678358Z             {
2026-06-04T12:53:14.6678950Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:53:14.6679455Z               "line": 157
2026-06-04T12:53:14.6679878Z             },
2026-06-04T12:53:14.6680302Z             {
2026-06-04T12:53:14.6680884Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:53:14.6681332Z               "line": 199
2026-06-04T12:53:14.6681761Z             },
2026-06-04T12:53:14.6682186Z             {
2026-06-04T12:53:14.6682778Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:53:14.6683234Z               "line": 226
2026-06-04T12:53:14.6683660Z             },
2026-06-04T12:53:14.6684074Z             {
2026-06-04T12:53:14.6684611Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.6685056Z               "line": 272
2026-06-04T12:53:14.6691378Z             }
2026-06-04T12:53:14.6691829Z           ]
2026-06-04T12:53:14.6692240Z         },
2026-06-04T12:53:14.6692672Z         "int": {
2026-06-04T12:53:14.6693129Z           "complete": true,
2026-06-04T12:53:14.6693577Z           "evidence": [
2026-06-04T12:53:14.6693983Z             {
2026-06-04T12:53:14.6694631Z               "path": "crates/spt-daemon/tests/digest.rs",
2026-06-04T12:53:14.6695072Z               "line": 18
2026-06-04T12:53:14.6695482Z             }
2026-06-04T12:53:14.6695894Z           ]
2026-06-04T12:53:14.6696303Z         },
2026-06-04T12:53:14.6696760Z         "unit": {
2026-06-04T12:53:14.6697210Z           "complete": true,
2026-06-04T12:53:14.6697658Z           "evidence": [
2026-06-04T12:53:14.6698096Z             {
2026-06-04T12:53:14.6698712Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6699216Z               "line": 250
2026-06-04T12:53:14.6699639Z             },
2026-06-04T12:53:14.6700053Z             {
2026-06-04T12:53:14.6700680Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6701132Z               "line": 263
2026-06-04T12:53:14.6701555Z             },
2026-06-04T12:53:14.6701964Z             {
2026-06-04T12:53:14.6702579Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6703018Z               "line": 275
2026-06-04T12:53:14.6703436Z             },
2026-06-04T12:53:14.6703839Z             {
2026-06-04T12:53:14.6704451Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6704899Z               "line": 290
2026-06-04T12:53:14.6705321Z             },
2026-06-04T12:53:14.6705739Z             {
2026-06-04T12:53:14.6706344Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6706798Z               "line": 305
2026-06-04T12:53:14.6707222Z             },
2026-06-04T12:53:14.6707630Z             {
2026-06-04T12:53:14.6708243Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6708680Z               "line": 327
2026-06-04T12:53:14.6709098Z             },
2026-06-04T12:53:14.6709548Z             {
2026-06-04T12:53:14.6710169Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6710619Z               "line": 337
2026-06-04T12:53:14.6711027Z             },
2026-06-04T12:53:14.6711446Z             {
2026-06-04T12:53:14.6712049Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T12:53:14.6712500Z               "line": 364
2026-06-04T12:53:14.6712917Z             },
2026-06-04T12:53:14.6713337Z             {
2026-06-04T12:53:14.6713964Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:53:14.6714669Z               "line": 338
2026-06-04T12:53:14.6715236Z             },
2026-06-04T12:53:14.6715648Z             {
2026-06-04T12:53:14.6716375Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:53:14.6716810Z               "line": 350
2026-06-04T12:53:14.6717228Z             },
2026-06-04T12:53:14.6717647Z             {
2026-06-04T12:53:14.6718274Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:53:14.6718730Z               "line": 367
2026-06-04T12:53:14.6719143Z             },
2026-06-04T12:53:14.6719616Z             {
2026-06-04T12:53:14.6720250Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T12:53:14.6720706Z               "line": 378
2026-06-04T12:53:14.6721127Z             },
2026-06-04T12:53:14.6721531Z             {
2026-06-04T12:53:14.6722165Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.6722607Z               "line": 770
2026-06-04T12:53:14.6723041Z             },
2026-06-04T12:53:14.6723453Z             {
2026-06-04T12:53:14.6724101Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.6724557Z               "line": 777
2026-06-04T12:53:14.6724977Z             },
2026-06-04T12:53:14.6725390Z             {
2026-06-04T12:53:14.6726014Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.6726459Z               "line": 792
2026-06-04T12:53:14.6726866Z             },
2026-06-04T12:53:14.6727280Z             {
2026-06-04T12:53:14.6727867Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:53:14.6728304Z               "line": 381
2026-06-04T12:53:14.6728724Z             },
2026-06-04T12:53:14.6729128Z             {
2026-06-04T12:53:14.6729754Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:53:14.6730202Z               "line": 402
2026-06-04T12:53:14.6730614Z             },
2026-06-04T12:53:14.6731030Z             {
2026-06-04T12:53:14.6731617Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:53:14.6732065Z               "line": 415
2026-06-04T12:53:14.6732484Z             },
2026-06-04T12:53:14.6732895Z             {
2026-06-04T12:53:14.6733473Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:53:14.6733912Z               "line": 434
2026-06-04T12:53:14.6734434Z             },
2026-06-04T12:53:14.6734839Z             {
2026-06-04T12:53:14.6735424Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T12:53:14.6735863Z               "line": 461
2026-06-04T12:53:14.6736281Z             },
2026-06-04T12:53:14.6736700Z             {
2026-06-04T12:53:14.6737300Z               "path": "crates/spt-term/tests/digest.rs",
2026-06-04T12:53:14.6737739Z               "line": 32
2026-06-04T12:53:14.6738152Z             },
2026-06-04T12:53:14.6738570Z             {
2026-06-04T12:53:14.6739092Z               "path": "crates/spt/src/cli.rs",
2026-06-04T12:53:14.6739575Z               "line": 1200
2026-06-04T12:53:14.6740010Z             }
2026-06-04T12:53:14.6740418Z           ]
2026-06-04T12:53:14.6740830Z         }
2026-06-04T12:53:14.6741240Z       }
2026-06-04T12:53:14.6741650Z     },
2026-06-04T12:53:14.6742048Z     {
2026-06-04T12:53:14.6742495Z       "id": "REQ-UPD-1",
2026-06-04T12:53:14.6743091Z       "title": "Peer-propagated update over P2P",
2026-06-04T12:53:14.6743556Z       "requiredStages": [
2026-06-04T12:53:14.6743985Z         "impl",
2026-06-04T12:53:14.6744396Z         "unit"
2026-06-04T12:53:14.6744814Z       ],
2026-06-04T12:53:14.6745232Z       "stages": {
2026-06-04T12:53:14.6745653Z         "doc": {
2026-06-04T12:53:14.6746177Z           "complete": false,
2026-06-04T12:53:14.6746611Z           "evidence": []
2026-06-04T12:53:14.6747026Z         },
2026-06-04T12:53:14.6747445Z         "impl": {
2026-06-04T12:53:14.6747908Z           "complete": true,
2026-06-04T12:53:14.6748341Z           "evidence": [
2026-06-04T12:53:14.6748756Z             {
2026-06-04T12:53:14.6749448Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:53:14.6750066Z               "line": 28
2026-06-04T12:53:14.6750654Z             },
2026-06-04T12:53:14.6751063Z             {
2026-06-04T12:53:14.6751702Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:53:14.6752135Z               "line": 74
2026-06-04T12:53:14.6752553Z             },
2026-06-04T12:53:14.6752969Z             {
2026-06-04T12:53:14.6753600Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:53:14.6754043Z               "line": 209
2026-06-04T12:53:14.6754451Z             },
2026-06-04T12:53:14.6754866Z             {
2026-06-04T12:53:14.6755484Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:53:14.6755922Z               "line": 22
2026-06-04T12:53:14.6756363Z             },
2026-06-04T12:53:14.6756765Z             {
2026-06-04T12:53:14.6757384Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:53:14.6757820Z               "line": 67
2026-06-04T12:53:14.6758254Z             },
2026-06-04T12:53:14.6758658Z             {
2026-06-04T12:53:14.6759329Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:53:14.6759787Z               "line": 80
2026-06-04T12:53:14.6760201Z             },
2026-06-04T12:53:14.6760621Z             {
2026-06-04T12:53:14.6761245Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:53:14.6761691Z               "line": 101
2026-06-04T12:53:14.6762105Z             },
2026-06-04T12:53:14.6762525Z             {
2026-06-04T12:53:14.6763138Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T12:53:14.6763568Z               "line": 37
2026-06-04T12:53:14.6763991Z             }
2026-06-04T12:53:14.6764397Z           ]
2026-06-04T12:53:14.6764814Z         },
2026-06-04T12:53:14.6765223Z         "int": {
2026-06-04T12:53:14.6765690Z           "complete": true,
2026-06-04T12:53:14.6766136Z           "evidence": [
2026-06-04T12:53:14.6766542Z             {
2026-06-04T12:53:14.6767199Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T12:53:14.6773141Z               "line": 190
2026-06-04T12:53:14.6773708Z             }
2026-06-04T12:53:14.6774138Z           ]
2026-06-04T12:53:14.6774562Z         },
2026-06-04T12:53:14.6774994Z         "unit": {
2026-06-04T12:53:14.6775447Z           "complete": true,
2026-06-04T12:53:14.6775899Z           "evidence": [
2026-06-04T12:53:14.6776391Z             {
2026-06-04T12:53:14.6777037Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:53:14.6777474Z               "line": 120
2026-06-04T12:53:14.6777901Z             },
2026-06-04T12:53:14.6778319Z             {
2026-06-04T12:53:14.6779124Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T12:53:14.6779812Z               "line": 137
2026-06-04T12:53:14.6780228Z             },
2026-06-04T12:53:14.6780644Z             {
2026-06-04T12:53:14.6781309Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T12:53:14.6781770Z               "line": 201
2026-06-04T12:53:14.6782192Z             },
2026-06-04T12:53:14.6782599Z             {
2026-06-04T12:53:14.6783226Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T12:53:14.6783655Z               "line": 92
2026-06-04T12:53:14.6784076Z             },
2026-06-04T12:53:14.6784488Z             {
2026-06-04T12:53:14.6785091Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T12:53:14.6785527Z               "line": 128
2026-06-04T12:53:14.6785932Z             }
2026-06-04T12:53:14.6786347Z           ]
2026-06-04T12:53:14.6786748Z         }
2026-06-04T12:53:14.6787166Z       }
2026-06-04T12:53:14.6787573Z     },
2026-06-04T12:53:14.6788130Z     {
2026-06-04T12:53:14.6788605Z       "id": "REQ-UPD-2",
2026-06-04T12:53:14.6789441Z       "title": "All binaries signature-verified before handoff",
2026-06-04T12:53:14.6789998Z       "requiredStages": [
2026-06-04T12:53:14.6790596Z         "impl",
2026-06-04T12:53:14.6791084Z         "unit"
2026-06-04T12:53:14.6792052Z       ],
2026-06-04T12:53:14.6792576Z       "stages": {
2026-06-04T12:53:14.6793097Z         "doc": {
2026-06-04T12:53:14.6793846Z           "complete": false,
2026-06-04T12:53:14.6794382Z           "evidence": []
2026-06-04T12:53:14.6794855Z         },
2026-06-04T12:53:14.6795372Z         "impl": {
2026-06-04T12:53:14.6795910Z           "complete": true,
2026-06-04T12:53:14.6796441Z           "evidence": [
2026-06-04T12:53:14.6796954Z             {
2026-06-04T12:53:14.6797720Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:53:14.6798257Z               "line": 210
2026-06-04T12:53:14.6798717Z             },
2026-06-04T12:53:14.6799153Z             {
2026-06-04T12:53:14.6799965Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T12:53:14.6800458Z               "line": 294
2026-06-04T12:53:14.6800916Z             },
2026-06-04T12:53:14.6801381Z             {
2026-06-04T12:53:14.6802104Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6802651Z               "line": 29
2026-06-04T12:53:14.6803135Z             },
2026-06-04T12:53:14.6803755Z             {
2026-06-04T12:53:14.6804473Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6805003Z               "line": 126
2026-06-04T12:53:14.6805567Z             },
2026-06-04T12:53:14.6806018Z             {
2026-06-04T12:53:14.6806709Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6807211Z               "line": 138
2026-06-04T12:53:14.6807659Z             },
2026-06-04T12:53:14.6808116Z             {
2026-06-04T12:53:14.6808796Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6809368Z               "line": 220
2026-06-04T12:53:14.6809856Z             },
2026-06-04T12:53:14.6810450Z             {
2026-06-04T12:53:14.6811126Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6811619Z               "line": 301
2026-06-04T12:53:14.6812067Z             },
2026-06-04T12:53:14.6812519Z             {
2026-06-04T12:53:14.6813176Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:53:14.6813656Z               "line": 149
2026-06-04T12:53:14.6814150Z             }
2026-06-04T12:53:14.6814594Z           ]
2026-06-04T12:53:14.6815026Z         },
2026-06-04T12:53:14.6815476Z         "int": {
2026-06-04T12:53:14.6815980Z           "complete": false,
2026-06-04T12:53:14.6816491Z           "evidence": []
2026-06-04T12:53:14.6816947Z         },
2026-06-04T12:53:14.6817388Z         "unit": {
2026-06-04T12:53:14.6817864Z           "complete": true,
2026-06-04T12:53:14.6818326Z           "evidence": [
2026-06-04T12:53:14.6818770Z             {
2026-06-04T12:53:14.6819494Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6819983Z               "line": 386
2026-06-04T12:53:14.6820469Z             },
2026-06-04T12:53:14.6820916Z             {
2026-06-04T12:53:14.6821587Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6822077Z               "line": 431
2026-06-04T12:53:14.6822526Z             },
2026-06-04T12:53:14.6822965Z             {
2026-06-04T12:53:14.6823623Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6824097Z               "line": 445
2026-06-04T12:53:14.6824532Z             },
2026-06-04T12:53:14.6824983Z             {
2026-06-04T12:53:14.6825625Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6826108Z               "line": 456
2026-06-04T12:53:14.6826530Z             },
2026-06-04T12:53:14.6826956Z             {
2026-06-04T12:53:14.6827580Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6828025Z               "line": 532
2026-06-04T12:53:14.6828450Z             },
2026-06-04T12:53:14.6828866Z             {
2026-06-04T12:53:14.6829541Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:53:14.6830004Z               "line": 326
2026-06-04T12:53:14.6830436Z             },
2026-06-04T12:53:14.6831102Z             {
2026-06-04T12:53:14.6831721Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:53:14.6832334Z               "line": 339
2026-06-04T12:53:14.6832756Z             },
2026-06-04T12:53:14.6833184Z             {
2026-06-04T12:53:14.6833856Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T12:53:14.6834324Z               "line": 242
2026-06-04T12:53:14.6834747Z             }
2026-06-04T12:53:14.6835160Z           ]
2026-06-04T12:53:14.6835586Z         }
2026-06-04T12:53:14.6836001Z       }
2026-06-04T12:53:14.6836416Z     },
2026-06-04T12:53:14.6836830Z     {
2026-06-04T12:53:14.6837289Z       "id": "REQ-UPD-3",
2026-06-04T12:53:14.6838241Z       "title": "No endpoint process terminates/suspends during self-update",
2026-06-04T12:53:14.6838713Z       "requiredStages": [
2026-06-04T12:53:14.6839148Z         "impl",
2026-06-04T12:53:14.6839616Z         "unit",
2026-06-04T12:53:14.6840049Z         "int"
2026-06-04T12:53:14.6840465Z       ],
2026-06-04T12:53:14.6840915Z       "stages": {
2026-06-04T12:53:14.6841343Z         "doc": {
2026-06-04T12:53:14.6841807Z           "complete": false,
2026-06-04T12:53:14.6842272Z           "evidence": []
2026-06-04T12:53:14.6842693Z         },
2026-06-04T12:53:14.6843129Z         "impl": {
2026-06-04T12:53:14.6843591Z           "complete": true,
2026-06-04T12:53:14.6844039Z           "evidence": [
2026-06-04T12:53:14.6844462Z             {
2026-06-04T12:53:14.6845090Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:53:14.6845544Z               "line": 26
2026-06-04T12:53:14.6845967Z             },
2026-06-04T12:53:14.6846391Z             {
2026-06-04T12:53:14.6847004Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:53:14.6847456Z               "line": 111
2026-06-04T12:53:14.6847878Z             },
2026-06-04T12:53:14.6848290Z             {
2026-06-04T12:53:14.6848913Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:53:14.6849567Z               "line": 213
2026-06-04T12:53:14.6850174Z             }
2026-06-04T12:53:14.6850595Z           ]
2026-06-04T12:53:14.6851020Z         },
2026-06-04T12:53:14.6851463Z         "int": {
2026-06-04T12:53:14.6851926Z           "complete": true,
2026-06-04T12:53:14.6852375Z           "evidence": [
2026-06-04T12:53:14.6852794Z             {
2026-06-04T12:53:14.6853601Z               "path": "crates/spt-daemon/tests/brain_swap.rs",
2026-06-04T12:53:14.6862078Z               "line": 23
2026-06-04T12:53:14.6862690Z             }
2026-06-04T12:53:14.6863117Z           ]
2026-06-04T12:53:14.6863527Z         },
2026-06-04T12:53:14.6863967Z         "unit": {
2026-06-04T12:53:14.6864429Z           "complete": true,
2026-06-04T12:53:14.6864879Z           "evidence": [
2026-06-04T12:53:14.6865291Z             {
2026-06-04T12:53:14.6865929Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:53:14.6866378Z               "line": 238
2026-06-04T12:53:14.6866792Z             },
2026-06-04T12:53:14.6867211Z             {
2026-06-04T12:53:14.6867853Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:53:14.6868305Z               "line": 262
2026-06-04T12:53:14.6868733Z             },
2026-06-04T12:53:14.6869149Z             {
2026-06-04T12:53:14.6870146Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:53:14.6870591Z               "line": 273
2026-06-04T12:53:14.6871019Z             },
2026-06-04T12:53:14.6871430Z             {
2026-06-04T12:53:14.6872043Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T12:53:14.6872494Z               "line": 286
2026-06-04T12:53:14.6872908Z             }
2026-06-04T12:53:14.6873326Z           ]
2026-06-04T12:53:14.6873737Z         }
2026-06-04T12:53:14.6874155Z       }
2026-06-04T12:53:14.6874560Z     },
2026-06-04T12:53:14.6874978Z     {
2026-06-04T12:53:14.6875420Z       "id": "REQ-UPD-4",
2026-06-04T12:53:14.6876419Z       "title": "Update gated on user confirmation by default; opt-in full-auto",
2026-06-04T12:53:14.6877344Z       "requiredStages": [
2026-06-04T12:53:14.6877767Z         "impl",
2026-06-04T12:53:14.6878188Z         "unit"
2026-06-04T12:53:14.6878748Z       ],
2026-06-04T12:53:14.6879224Z       "stages": {
2026-06-04T12:53:14.6879968Z         "doc": {
2026-06-04T12:53:14.6880442Z           "complete": false,
2026-06-04T12:53:14.6880896Z           "evidence": []
2026-06-04T12:53:14.6881303Z         },
2026-06-04T12:53:14.6881736Z         "impl": {
2026-06-04T12:53:14.6882185Z           "complete": true,
2026-06-04T12:53:14.6882633Z           "evidence": [
2026-06-04T12:53:14.6883044Z             {
2026-06-04T12:53:14.6883669Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:53:14.6884113Z               "line": 23
2026-06-04T12:53:14.6884534Z             },
2026-06-04T12:53:14.6884950Z             {
2026-06-04T12:53:14.6885559Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:53:14.6886006Z               "line": 56
2026-06-04T12:53:14.6886431Z             },
2026-06-04T12:53:14.6886853Z             {
2026-06-04T12:53:14.6887475Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:53:14.6887922Z               "line": 77
2026-06-04T12:53:14.6888342Z             },
2026-06-04T12:53:14.6888749Z             {
2026-06-04T12:53:14.6889573Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T12:53:14.6890186Z               "line": 179
2026-06-04T12:53:14.6890601Z             },
2026-06-04T12:53:14.6891019Z             {
2026-06-04T12:53:14.6891605Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T12:53:14.6892051Z               "line": 98
2026-06-04T12:53:14.6892467Z             },
2026-06-04T12:53:14.6892880Z             {
2026-06-04T12:53:14.6893459Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.6893897Z               "line": 139
2026-06-04T12:53:14.6894316Z             }
2026-06-04T12:53:14.6894728Z           ]
2026-06-04T12:53:14.6895150Z         },
2026-06-04T12:53:14.6895563Z         "int": {
2026-06-04T12:53:14.6896038Z           "complete": false,
2026-06-04T12:53:14.6896491Z           "evidence": []
2026-06-04T12:53:14.6896907Z         },
2026-06-04T12:53:14.6897329Z         "unit": {
2026-06-04T12:53:14.6897781Z           "complete": true,
2026-06-04T12:53:14.6898219Z           "evidence": [
2026-06-04T12:53:14.6898625Z             {
2026-06-04T12:53:14.6899285Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T12:53:14.6899742Z               "line": 309
2026-06-04T12:53:14.6900154Z             },
2026-06-04T12:53:14.6900570Z             {
2026-06-04T12:53:14.6901178Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:53:14.6901624Z               "line": 102
2026-06-04T12:53:14.6902031Z             },
2026-06-04T12:53:14.6902444Z             {
2026-06-04T12:53:14.6903057Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:53:14.6903495Z               "line": 117
2026-06-04T12:53:14.6903916Z             },
2026-06-04T12:53:14.6904333Z             {
2026-06-04T12:53:14.6904950Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T12:53:14.6905402Z               "line": 136
2026-06-04T12:53:14.6905822Z             },
2026-06-04T12:53:14.6906236Z             {
2026-06-04T12:53:14.6906801Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T12:53:14.6907244Z               "line": 308
2026-06-04T12:53:14.6907656Z             },
2026-06-04T12:53:14.6908077Z             {
2026-06-04T12:53:14.6908664Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T12:53:14.6909118Z               "line": 442
2026-06-04T12:53:14.6909573Z             }
2026-06-04T12:53:14.6909983Z           ]
2026-06-04T12:53:14.6910399Z         }
2026-06-04T12:53:14.6910809Z       }
2026-06-04T12:53:14.6911223Z     },
2026-06-04T12:53:14.6911627Z     {
2026-06-04T12:53:14.6912085Z       "id": "REQ-UPD-5",
2026-06-04T12:53:14.6912829Z       "title": "spt-core ripple-updates registered adapters",
2026-06-04T12:53:14.6913293Z       "requiredStages": [
2026-06-04T12:53:14.6913912Z         "impl",
2026-06-04T12:53:14.6914331Z         "unit"
2026-06-04T12:53:14.6914931Z       ],
2026-06-04T12:53:14.6915356Z       "stages": {
2026-06-04T12:53:14.6915780Z         "doc": {
2026-06-04T12:53:14.6916241Z           "complete": false,
2026-06-04T12:53:14.6916676Z           "evidence": []
2026-06-04T12:53:14.6917091Z         },
2026-06-04T12:53:14.6917504Z         "impl": {
2026-06-04T12:53:14.6917956Z           "complete": true,
2026-06-04T12:53:14.6918390Z           "evidence": [
2026-06-04T12:53:14.6918806Z             {
2026-06-04T12:53:14.6919543Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6919980Z               "line": 27
2026-06-04T12:53:14.6920397Z             },
2026-06-04T12:53:14.6920801Z             {
2026-06-04T12:53:14.6921489Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6921921Z               "line": 82
2026-06-04T12:53:14.6922341Z             },
2026-06-04T12:53:14.6922772Z             {
2026-06-04T12:53:14.6923448Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6923904Z               "line": 134
2026-06-04T12:53:14.6924318Z             },
2026-06-04T12:53:14.6924737Z             {
2026-06-04T12:53:14.6925353Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6925814Z               "line": 260
2026-06-04T12:53:14.6926232Z             },
2026-06-04T12:53:14.6926641Z             {
2026-06-04T12:53:14.6927256Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T12:53:14.6927696Z               "line": 288
2026-06-04T12:53:14.6928114Z             }
2026-06-04T12:53:14.6928517Z           ]
2026-06-04T12:53:14.6928935Z         },
2026-06-04T12:53:14.6929395Z         "int": {
2026-06-04T12:53:14.6929855Z           "complete": false,
2026-06-04T12:53:14.6930304Z           "evidence": []
2026-06-04T12:53:14.6930714Z         },
2026-06-04T12:53:14.6931140Z         "unit": {
2026-06-04T12:53:14.6931600Z           "complete": true,
2026-06-04T12:53:14.6932050Z           "evidence": [
2026-06-04T12:53:14.6932469Z             {
2026-06-04T12:53:14.6933160Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6933604Z               "line": 194
2026-06-04T12:53:14.6934016Z             },
2026-06-04T12:53:14.6934430Z             {
2026-06-04T12:53:14.6935100Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6935549Z               "line": 208
2026-06-04T12:53:14.6935973Z             },
2026-06-04T12:53:14.6936381Z             {
2026-06-04T12:53:14.6937062Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6937501Z               "line": 222
2026-06-04T12:53:14.6937940Z             },
2026-06-04T12:53:14.6938563Z             {
2026-06-04T12:53:14.6939380Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6947046Z               "line": 236
2026-06-04T12:53:14.6947797Z             },
2026-06-04T12:53:14.6948265Z             {
2026-06-04T12:53:14.6949042Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T12:53:14.6949781Z               "line": 270
2026-06-04T12:53:14.6950228Z             },
2026-06-04T12:53:14.6950641Z             {
2026-06-04T12:53:14.6951304Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T12:53:14.6951765Z               "line": 740
2026-06-04T12:53:14.6952211Z             }
2026-06-04T12:53:14.6952646Z           ]
2026-06-04T12:53:14.6953082Z         }
2026-06-04T12:53:14.6953512Z       }
2026-06-04T12:53:14.6953991Z     }
2026-06-04T12:53:14.6954429Z   ],
2026-06-04T12:53:14.6954873Z   "findings": []
2026-06-04T12:53:14.6955293Z }
